在腾讯云 Ubuntu 20.04(Focal Fossa)服务器上安装 Docker,需进行以下前置准备,以确保安装顺利、安全且符合最佳实践:
✅ 一、基础系统准备
-
更新系统软件包索引
sudo apt update && sudo apt upgrade -y✅ 确保系统为最新状态,修复已知漏洞,避免依赖冲突。
-
安装必要依赖工具(Docker 官方安装脚本/仓库依赖)
sudo apt install -y apt-transport-https ca-certificates curl gnupg lsb-release software-properties-commonapt-transport-https:支持通过 HTTPS 添加 APT 仓库ca-certificates:验证 HTTPS 证书curl/gnupg:下载和验证 GPG 密钥software-properties-common:提供add-apt-repository命令(可选但推荐)
-
确认内核版本兼容性
uname -r✅ Ubuntu 20.04 默认内核为
5.4.x或更高(如5.4.0-xx-generic),完全满足 Docker 要求(Docker CE ≥ 20.10 要求 Linux kernel ≥ 3.10,且推荐 ≥ 4.19 + cgroup v1/v2 支持)。
🔍 可选检查:grep -i cgroup /boot/config-$(uname -r)确认CONFIG_CGROUPS=y已启用(Ubuntu 20.04 默认开启)。
✅ 二、网络与安全准备
-
确保网络连通性(尤其国内环境)
- 腾讯云默认可访问公网(若为无公网 IP 的内网实例,需配置 NAT 网关或X_X)
- 建议测试能否访问 Docker 官方源:
curl -fsSL https://download.docker.com/linux/ubuntu/dists/focal/InRelease | head -n5 - ⚠️ 若访问慢或超时(常见于国内),强烈建议配置国内镜像源(如阿里云、清华源):
# 替换 docker-ce 仓库地址(以阿里云为例) echo "deb [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker-ce.list
-
添加 Docker 官方 GPG 密钥(或国内镜像密钥)
# 推荐使用阿里云镜像的密钥(更稳定): curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-ce-archive-keyring.gpg # 或官方密钥(需网络通畅): # curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-ce-archive-keyring.gpg
✅ 三、腾讯云特有注意事项
-
检查并关闭可能冲突的服务
- 腾讯云部分镜像可能预装了
containerd或旧版docker.io(Ubuntu 自带的较旧版本),建议卸载避免冲突:sudo apt remove -y docker docker-engine docker.io containerd runc sudo rm -rf /var/lib/docker /var/lib/containerd
- 腾讯云部分镜像可能预装了
-
SELinux / AppArmor 状态确认
- Ubuntu 20.04 默认使用 AppArmor(非 SELinux),Docker 兼容良好,无需禁用。
aa-status # 查看 AppArmor 状态(正常运行即可) - ❌ 不要禁用 AppArmor — Docker 依赖其提供容器安全策略。
- Ubuntu 20.04 默认使用 AppArmor(非 SELinux),Docker 兼容良好,无需禁用。
-
腾讯云安全组 & 实例防火墙
- Docker 默认不开放端口到公网(仅 host network 模式或显式
-p才暴露)。 - 若需从网络访问容器服务(如 Nginx),请在 腾讯云控制台 → 安全组 中放行对应端口(如 80/443/自定义端口)。
- Ubuntu 自带
ufw通常未启用,如已启用,请确保规则允许所需流量:sudo ufw status verbose # 检查;若启用,按需添加规则
- Docker 默认不开放端口到公网(仅 host network 模式或显式
✅ 四、用户权限准备(提升体验)
- 将当前用户加入
docker组(免 sudo 运行命令)sudo groupadd docker # 如不存在则创建(Ubuntu 20.04 通常已存在) sudo usermod -aG docker $USER✅ 执行后需重新登录 SSH 或运行
newgrp docker生效。
🔒 注意:此操作赋予用户等同 root 的容器控制权,请确保账户安全。
✅ 五、可选但强烈推荐:配置 Docker 镜像提速器(国内必备)
腾讯云用户可使用腾讯云容器镜像服务(TCR)免费提速器(需注册 TCR 并获取提速地址),或通用国内提速器(如中科大、网易):
# 创建 daemon.json(若不存在)
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": [
"https://mirror.ccs.tencentyun.com", # 腾讯云官方镜像(推荐,需实名认证后获取专属地址更佳)
"https://docker.mirrors.ustc.edu.cn",
"https://hub-mirror.c.163.com"
],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m",
"max-file": "3"
}
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
✅ 提速器显著提升
docker pull速度,避免因拉取超时导致安装失败或部署卡顿。
| ✅ 总结:最小必要前置步骤清单 | 步骤 | 命令/操作 |
|---|---|---|
| 1️⃣ 系统更新 | sudo apt update && sudo apt upgrade -y |
|
| 2️⃣ 安装依赖 | sudo apt install -y apt-transport-https ca-certificates curl gnupg lsb-release |
|
| 3️⃣ 清理旧 Docker | sudo apt remove -y docker docker.io containerd runc |
|
| 4️⃣ 添加镜像源(推荐阿里云/腾讯云) | echo "deb [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker-ce.list |
|
| 5️⃣ 导入 GPG 密钥 | curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-ce-archive-keyring.gpg |
|
| 6️⃣ 配置镜像提速器 | /etc/docker/daemon.json + systemctl restart docker |
|
| 7️⃣ 加入 docker 组 | sudo usermod -aG docker $USER + 重登 |
✅ 验证安装(后续步骤)
完成前置后,执行标准安装:
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io
sudo docker run --rm hello-world # 测试成功即表示一切就绪
如需我为你生成一键自动化安装脚本(含腾讯云适配、镜像提速、用户组配置),欢迎随时告知 👍
需要我继续提供 Docker Compose 安装、Nginx + SSL 快速部署示例 或 腾讯云 TCR 私有镜像仓库对接指南 吗?
云小栈