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-world 和 docker info 验证安装与镜像加速是否正常。