在腾讯云 Ubuntu 服务器(推荐使用 Ubuntu 22.04 LTS 或 20.04 LTS)上配置 Docker 环境的完整、安全、生产就绪步骤如下(含验证、非 root 运行、镜像提速等关键实践):
✅ 前置条件
- 已登录腾讯云 Ubuntu 服务器(SSH,建议使用
ubuntu用户或具有sudo权限的用户) - 系统已更新(确保内核和基础工具为最新)
- 网络通畅(可访问公网,用于下载 Docker 和镜像)
🔧 步骤 1:系统更新与依赖安装
# 更新软件包索引并升级系统(推荐先执行)
sudo apt update && sudo apt upgrade -y
# 安装必要依赖(用于通过 HTTPS 添加仓库)
sudo apt install -y
ca-certificates
curl
gnupg
lsb-release
software-properties-common
apt-transport-https
💡 提示:Ubuntu 22.04+ 默认已预装部分工具,但显式安装可确保兼容性。
🐳 步骤 2:添加 Docker 官方 GPG 密钥和 APT 仓库
# 创建 docker 目录(若不存在)
sudo mkdir -p /etc/apt/keyrings
# 下载并添加 Docker 官方 GPG 密钥(安全可靠)
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
# 添加稳定版 Docker APT 仓库(自动适配 Ubuntu 版本)
echo
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
✅ 验证:
ls /etc/apt/keyrings/docker.gpg应存在;cat /etc/apt/sources.list.d/docker.list应显示正确仓库地址。
📦 步骤 3:安装 Docker Engine(社区版 CE)
# 刷新包索引(必须!)
sudo apt update
# 安装 Docker 引擎、CLI、containerd 及相关依赖
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
# 验证安装(不报错即成功)
docker --version # 如:Docker version 24.0.7, build afdd53b
docker-compose --version # 如:Docker Compose version v2.23.0
⚠️ 注意:避免使用
apt install docker.io(Ubuntu 官方源版本老旧且非官方维护,不推荐生产环境)。
▶️ 步骤 4:启动并启用 Docker 服务
# 启动 Docker 守护进程
sudo systemctl start docker
# 设置开机自启
sudo systemctl enable docker
# 检查状态(应显示 active (running))
sudo systemctl status docker --no-pager -l
👤 步骤 5:配置非 root 用户免 sudo 运行 Docker(安全增强)
❗重要:默认
docker命令需sudo,但将用户加入docker组后可免密码执行(仅限可信用户)。
# 创建 docker 组(如不存在)
sudo groupadd docker 2>/dev/null || true
# 将当前用户(如 ubuntu)加入 docker 组
sudo usermod -aG docker $USER
# 生效组权限(立即生效,无需重启,但需重新登录或刷新会话)
newgrp docker # 或直接关闭 SSH 重连
✅ 验证(新会话中执行):
docker run --rm hello-world
# 输出 "Hello from Docker!" 即成功
🔒 安全提醒:
docker组等价于 root 权限,切勿将不可信用户加入该组。生产环境建议用rootless Docker(进阶可选)。
🌐 步骤 6:配置国内镜像提速(强烈推荐,解决拉取慢/超时问题)
腾讯云用户推荐使用 腾讯云容器镜像服务(TCR)镜像提速器 或 阿里云/中科大镜像站。
✅ 推荐方案:使用腾讯云 TCR 免费镜像提速(需注册腾讯云账号)
- 登录 腾讯云容器镜像服务控制台
- 进入「实例管理」→ 创建「公共实例」(免费,地域选与 CVM 同区,如
ap-guangzhou) - 进入实例 → 「概览」页 → 复制 镜像提速地址(形如
https://xxxxxx.mirror.tencentyun.com)
配置提速器:
# 创建 daemon.json(若不存在)
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": [
"https://xxxxxx.mirror.tencentyun.com", // ← 替换为你自己的提速地址
"https://mirrors.aliyun.com/docker-ce/", // 阿里云备用
"https://docker.mirrors.ustc.edu.cn/" // 中科大备用
],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m",
"max-file": "3"
}
}
EOF
# 重启 Docker 生效
sudo systemctl daemon-reload
sudo systemctl restart docker
✅ 验证提速生效:
docker info | grep "Registry Mirrors" -A 5
# 应显示你配置的镜像地址
🧪 步骤 7:基础功能验证(必做!)
# 1. 运行测试容器
docker run -d -p 8080:80 --name nginx-test nginx:alpine
curl -s http://localhost:8080 | head -10 # 应返回 HTML 片段
# 2. 查看运行中的容器
docker ps
# 3. 清理测试资源
docker stop nginx-test && docker rm nginx-test
docker rmi nginx:alpine
🛡️ (可选)安全加固建议(生产环境)
| 项目 | 建议 |
|---|---|
| 防火墙 | 开放必要端口(如 22、80/443),禁止暴露 2375/2376(Docker API)到公网 |
| Docker API 访问 | 如需远程管理,务必启用 TLS 认证或通过 SSH 隧道X_X |
| 定期更新 | sudo apt update && sudo apt upgrade docker-ce* |
| 日志轮转 | 上述 daemon.json 已配置 json-file 日志大小限制 |
| 资源限制 | 在 docker run 中使用 --memory, --cpus 防止容器耗尽宿主机资源 |
📚 附:常用命令速查
# 查看 Docker 状态
sudo systemctl status docker
# 查看磁盘占用(清理无用资源)
docker system df
docker system prune -a --volumes # 谨慎!删除所有未使用对象
# 查看容器日志(实时)
docker logs -f <container_name>
# 进入容器(调试用)
docker exec -it <container_name> /bin/sh
✅ 至此,你的腾讯云 Ubuntu 服务器已具备完整、高效、安全的 Docker 运行环境!
下一步可部署 Nginx、MySQL、WordPress 或基于 Docker Compose 的多容器应用。
需要我为你生成:
- ✅
docker-compose.yml示例(如 LNMP 环境) - ✅ Rootless Docker 配置指南(更安全)
- ✅ 使用 TCR 私有镜像仓库的完整流程
- ✅ 自动化一键脚本(
.sh可复制执行)
欢迎随时告诉我 👇
云知识