Skip to content

Docker Install 在 Debian 环境

Docker 官方文档(Debian): https://docs.docker.com/engine/install/debian/

添加 apt 存储库信息

这里的 url 改为国内加速地址,以解决无法连接到 download.docker.com 的问题。

shell
# Add Docker's official GPG key:
sudo apt update

sudo apt install -y ca-certificates curl

sudo install -m 0755 -d /etc/apt/keyrings

sudo curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/debian/gpg -o /etc/apt/keyrings/docker.asc

sudo chmod a+r /etc/apt/keyrings/docker.asc

# Add the repository to Apt sources:
sudo tee /etc/apt/sources.list.d/docker.sources <<EOF
Types: deb
URIs: https://mirrors.aliyun.com/docker-ce/linux/debian
Suites: $(. /etc/os-release && echo "$VERSION_CODENAME")
Components: stable
Architectures: $(dpkg --print-architecture)
Signed-By: /etc/apt/keyrings/docker.asc
EOF

# 更新系统包索引
sudo apt update

安装、启动并设置开机自启

bash
# 全套标准安装(推荐)
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

# 仅安装 docker (后续其他组件若需要,可以单独安装。比如:sudo apt install docker-compose-plugin)
sudo apt install -y docker-ce docker-ce-cli containerd.io
# 旧版本 containerd 内置在 docker 里,不用单独安装。新版本独立成单独的包,所以必须明确安装。

# Start Docker
sudo systemctl start docker

# 开机自动启动
sudo systemctl enable docker

# 检查各个组件是否安装正常
docker --version

containerd --version

docker compose version

docker buildx version

每个安装组件的作用

组件名作用
docker-ceDocker 核心引擎(服务端),真正运行容器的核心程序
docker-ce-cliDocker 命令行工具,让你能用 docker run/ps 等命令
containerd.io容器运行时,Docker 底层依赖,负责管理容器生命周期
docker-buildx-pluginDocker 构建增强插件,支持跨平台构建镜像
docker-compose-pluginDocker Compose V2(官方原生版),用 docker compose 命令管理多容器

总结:这 5 个包一起装,就是完整可用的 Docker 环境


配置镜像加速器

临时

shell
# 原来:
docker pull nginx:latest

# 找到镜像加速链接后,追加到最前面即可。比如加速为链接:docker.aday.fun
# 现在拉取就用下面这样:
docker pull docker.aday.fun/nginx:latest

永久

您可以通过修改 daemon 配置文件/etc/docker/daemon.json 来使用加速器

并且可以选择配置 k8s 运行要求 docker 的--cgroup-driver=systemd

shell
sudo mkdir -p /etc/docker

sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": [
    "https://docker.aday.fun",
  ],
  "exec-opts": ["native.cgroupdriver=systemd"]
}
EOF

sudo systemctl daemon-reload

sudo systemctl restart docker

国内 Docker 镜像加速器状态监测

https://pengtech.net/docker/docker-registry-mirrors-status.html