Ubuntu 20.04使用清华源快速安装与配置Docker
2026/8/5 11:29:50 网站建设 项目流程

1. 为什么选择清华源安装Docker?

在Ubuntu 20.04上安装Docker时,使用国内镜像源能显著提升下载速度。清华大学的开源软件镜像站(Tsinghua Open Source Mirror)是国内最稳定、最完整的开源镜像之一,特别适合在国内网络环境下使用。实测表明,通过清华源安装Docker的速度可以达到直接访问官方源的5-10倍。

注意:虽然Ubuntu官方仓库也提供Docker包,但版本往往较旧。通过Docker官方仓库安装能获得最新稳定版,这也是我们推荐的方式。

2. 环境准备与源配置

2.1 系统要求检查

首先确认你的Ubuntu 20.04系统满足以下条件:

  • 64位架构(运行uname -m应显示x86_64或aarch64)
  • 内核版本3.10或更高(运行uname -r查看)
  • 已配置sudo权限的用户

2.2 备份现有源配置

在修改源配置前,建议先备份原有配置:

sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak

2.3 配置清华源

  1. 编辑源列表文件:
sudo nano /etc/apt/sources.list
  1. 替换为以下清华源配置(Ubuntu 20.04 Focal):
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-backports main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-security main restricted universe multiverse
  1. 更新软件包索引:
sudo apt update && sudo apt upgrade -y

3. Docker安装完整流程

3.1 安装依赖工具

首先安装必要的工具包:

sudo apt install -y apt-transport-https ca-certificates curl software-properties-common gnupg lsb-release

3.2 添加Docker官方GPG密钥

虽然使用清华源,但仍需验证Docker官方签名:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

3.3 设置Docker清华镜像源

创建Docker源配置文件:

echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu focal stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

3.4 安装Docker引擎

  1. 更新源并安装:
sudo apt update sudo apt install -y docker-ce docker-ce-cli containerd.io
  1. 验证安装:
sudo docker run hello-world

成功运行应显示"Hello from Docker!"消息。

4. 安装后配置与优化

4.1 非root用户权限配置

为避免每次使用docker都要加sudo,将当前用户加入docker组:

sudo usermod -aG docker $USER newgrp docker # 立即生效

4.2 配置Docker镜像加速

编辑或创建daemon.json配置文件:

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

重启Docker服务使配置生效:

sudo systemctl restart docker

4.3 设置开机自启

启用Docker服务开机自动启动:

sudo systemctl enable docker

5. 常见问题解决方案

5.1 GPG密钥错误

如果遇到"NO_PUBKEY"错误,手动导入密钥:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys [缺失的密钥ID]

5.2 服务启动失败

检查服务状态和日志:

sudo systemctl status docker journalctl -xe -u docker

常见原因包括:

  • 内核模块未加载:尝试sudo modprobe overlay
  • 存储驱动冲突:在daemon.json中指定"storage-driver": "overlay2"

5.3 镜像拉取缓慢

除了配置registry-mirrors外,还可以:

  1. 直接指定镜像源拉取:
docker pull registry.cn-hangzhou.aliyuncs.com/library/ubuntu:20.04
  1. 使用国内镜像仓库:
docker pull docker.mirrors.ustc.edu.cn/library/nginx:latest

6. 进阶配置与使用技巧

6.1 Docker Compose安装

虽然Docker Engine已安装,但Docker Compose需要单独安装:

sudo curl -L "https://ghproxy.com/https://github.com/docker/compose/releases/download/v2.20.3/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose

验证安装:

docker-compose --version

6.2 容器资源限制

为防止容器占用过多资源,可以运行时限制:

docker run -it --memory="1g" --cpus="1.5" ubuntu:20.04

6.3 数据持久化最佳实践

推荐使用命名卷而非绑定挂载:

docker volume create mydata docker run -v mydata:/data ubuntu:20.04

查看卷信息:

docker volume inspect mydata

6.4 容器网络配置

创建自定义网络:

docker network create --driver bridge mynet

运行容器时指定网络:

docker run --network=mynet -d nginx

7. 生产环境建议

7.1 日志管理配置

限制容器日志大小,防止磁盘爆满:

sudo tee -a /etc/docker/daemon.json <<-'EOF' { "log-driver": "json-file", "log-opts": { "max-size": "10m", "max-file": "3" } } EOF

7.2 安全加固措施

  1. 禁止容器特权模式:
docker run --security-opt=no-new-privileges ubuntu:20.04
  1. 启用用户命名空间隔离:
sudo tee -a /etc/docker/daemon.json <<-'EOF' { "userns-remap": "default" } EOF

7.3 监控与维护

安装cAdvisor监控容器资源使用:

docker run \ --volume=/:/rootfs:ro \ --volume=/var/run:/var/run:ro \ --volume=/sys:/sys:ro \ --volume=/var/lib/docker/:/var/lib/docker:ro \ --publish=8080:8080 \ --detach=true \ --name=cadvisor \ gcr.io/cadvisor/cadvisor:v0.47.0

访问 http://localhost:8080 查看监控数据。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询