适用于 Ubuntu 20.04 / 22.04 / 24.04 等主流版本
解决“连接被重置”、“拉取镜像慢”、“hello-world 报错”等常见问题


一、为什么需要特殊配置?

Docker 官方仓库(download.docker.comregistry-1.docker.io)在国内访问不稳定,常出现:

  • curl: (35) Recv failure: 连接被对方重置
  • docker pull 卡住或超时
  • 拉取镜像时报 content size of zero 等异常

因此,必须使用国内镜像源来完成安装和日常使用。


二、使用国内镜像源安装 Docker(推荐清华源)

1. 添加 Docker 官方 GPG 密钥(使用清华镜像)

sudo mkdir -p /etc/apt/keyrings
sudo curl -fsSL https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

2. 添加清华软件源

echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

3. 安装 Docker

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

4. 验证安装

sudo docker run hello-world

若看到 “Hello from Docker!”,说明安装成功!


三、配置 Docker 镜像加速器(解决拉取慢/失败)

由于 Docker Hub 在国内访问困难,需配置 Registry Mirror(镜像加速器)

推荐配置(2026 年实测稳定)

编辑 Docker 配置文件:

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<EOF
{
  "registry-mirrors": [
    "https://docker.m.daocloud.io",
    "https://docker.mirrors.ustc.edu.cn"
  ]
}
EOF

✅ 说明:

  • docker.m.daocloud.io:DaoCloud 提供,兼容性好
  • docker.mirrors.ustc.edu.cn:中科大镜像,教育网友好
  • 不建议堆砌过多镜像源,避免因某个坏源导致 fallback 失败

重启 Docker 生效

sudo systemctl daemon-reload
sudo systemctl restart docker

验证配置是否生效

sudo docker info | grep -A5 "Registry Mirrors"

应看到你配置的镜像地址。


四、常用 Docker 命令速查

功能 命令
查看 Docker 版本 docker --version
查看本地镜像 docker images
拉取镜像(如 nginx) docker pull nginx
运行容器(前台) docker run nginx
运行交互式容器 docker run -it ubuntu bash
后台运行容器 docker run -d nginx
查看运行中的容器 docker ps
查看所有容器(含已停止) docker ps -a
停止容器 docker stop <容器ID或名称>
删除容器 docker rm <容器ID>
删除镜像 docker rmi <镜像名>
清理无用容器 docker container prune
清理无用镜像 docker image prune -a

五、免 sudo 使用 Docker(可选)

将当前用户加入 docker 用户组:

sudo usermod -aG docker $USER

然后重新登录终端,即可直接使用 docker 命令,无需 sudo

⚠️ 注意:此操作赋予用户 root 权限,请仅在个人开发机使用。


六、常见问题排查

Q1:hello-world 报错 content size of zero

→ 通常是某个镜像加速器返回异常数据。移除不可靠的镜像源(如某些公共轩辕/毫秒节点),只保留 DaoCloud 或中科大。

Q2:permission denied 访问 /var/run/docker.sock

→ 要么用 sudo,要么执行 sudo usermod -aG docker $USER 并重新登录。

Q3:安装时 curl 下载 GPG 失败

→ 改用清华、阿里云等国内源下载密钥,不要直连 download.docker.com


七、结语

通过以上步骤,你已经拥有了一个高速、稳定、功能完整的 Docker 开发环境。接下来可以:

  • 编写自己的 Dockerfile
  • 使用 docker-compose 编排多服务应用
  • 部署 Web 服务、数据库、AI 模型等容器化应用

参考资料

  • Docker 官方文档:https://docs.docker.com/engine/install/ubuntu/
  • 清华大学开源镜像站:https://mirrors.tuna.tsinghua.edu.cn/help/docker-ce/
  • DaoCloud 镜像加速:https://www.daocloud.io/mirror