返回文章列表
5 分钟阅读

Ubuntu 安装 Docker:国内镜像加速配置

从清理旧版本、添加 Docker 官方 apt 仓库到配置中国大陆镜像加速,完整记录 Ubuntu 安装 Docker Engine 的常用流程。

适用环境

本文使用 Docker 官方推荐的 apt 仓库方式安装 Docker Engine,适用于 64 位 Ubuntu 系统,例如 Ubuntu 22.04 LTS、24.04 LTS、25.10 和 26.04 LTS。

如果机器在中国大陆网络环境下使用,建议安装完成后配置 Docker Hub 镜像加速,避免拉取镜像时速度过慢或超时。

卸载旧版本

如果系统里曾经安装过 Ubuntu 软件源里的 Docker,先清理可能冲突的旧包:

sudo apt remove -y docker.io docker-compose docker-compose-v2 docker-doc podman-docker containerd runc

如果命令提示某些包不存在,可以忽略。

安装依赖

更新软件源并安装基础依赖:

sudo apt update
sudo apt install -y ca-certificates curl

创建 Docker GPG key 目录:

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

下载 Docker 官方 GPG key:

sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

添加 Docker 官方软件源

写入 Docker 官方 apt 源:

sudo tee /etc/apt/sources.list.d/docker.sources > /dev/null <<EOF
Types: deb
URIs: https://download.docker.com/linux/ubuntu
Suites: $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}")
Components: stable
Architectures: $(dpkg --print-architecture)
Signed-By: /etc/apt/keyrings/docker.asc
EOF

更新软件源:

sudo apt update

安装 Docker Engine

安装 Docker Engine、Docker CLI、containerd、Buildx 和 Compose 插件:

sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

安装完成后,Docker 服务通常会自动启动。可以通过下面的命令检查状态:

sudo systemctl status docker

如果 Docker 没有启动,手动启动并设置开机自启:

sudo systemctl enable --now docker

配置中国大陆镜像加速

Docker 默认从 Docker Hub 拉取镜像。在中国大陆网络环境下,可以配置 registry mirror 提升拉取稳定性。

创建或覆盖 Docker daemon 配置:

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json > /dev/null <<EOF
{
  "registry-mirrors": [
    "https://docker.m.daocloud.io"
  ]
}
EOF

重载 systemd 配置并重启 Docker:

sudo systemctl daemon-reload
sudo systemctl restart docker

查看镜像加速是否生效:

docker info

如果输出中出现下面内容,说明配置已经生效:

Registry Mirrors:
 https://docker.m.daocloud.io/

镜像站的可用性可能随时间变化。如果后续拉取仍然失败,可以替换为云厂商提供的专属镜像加速地址,例如阿里云、腾讯云或华为云控制台中的 Docker 镜像加速器。

验证安装结果

运行官方测试镜像:

sudo docker run hello-world

如果看到 Hello from Docker!,说明 Docker 已经安装成功。

也可以查看 Docker 和 Compose 版本:

docker version
docker compose version

允许普通用户运行 Docker

默认情况下,普通用户运行 docker 命令可能需要 sudo。如果希望当前用户直接运行 Docker,可以把当前用户加入 docker 用户组:

sudo usermod -aG docker $USER

然后退出当前终端重新登录,或者执行:

newgrp docker

验证权限:

docker ps

如果没有权限错误,说明配置成功。

常见问题

docker: permission denied

通常是当前用户没有加入 docker 用户组。执行下面的命令后重新登录:

sudo usermod -aG docker $USER

拉取镜像很慢或超时

先确认 /etc/docker/daemon.json 中已经配置 registry-mirrors,然后重启 Docker:

sudo systemctl restart docker
docker info

如果镜像站不可用,需要更换为其他可用的镜像加速地址。

Docker 服务没有启动

执行:

sudo systemctl enable --now docker

卸载 Docker

如果需要卸载 Docker,可以执行:

sudo apt purge -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras

如果还要删除所有镜像、容器、卷和 containerd 数据:

sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd

这会清空本机 Docker 数据,执行前需要确认没有重要容器或数据卷。

小结

Ubuntu 安装 Docker 推荐使用 Docker 官方 apt 仓库方式,后续升级更方便。中国大陆用户建议安装后立即配置 registry-mirrors,再通过 docker run hello-worlddocker info 验证安装与镜像加速是否正常。