在腾讯云服务器上怎么部署Docker环境?

在腾讯云服务器(CVM)上部署 Docker 环境非常简单,以下是详细、安全、生产就绪的步骤指南(适用于主流 Linux 发行版,如 Ubuntu 22.04/24.04 或 CentOS 7/8/Stream 9),已适配腾讯云网络环境和最佳实践:


✅ 前提条件

  • 已开通腾讯云 CVM 实例(推荐选择 Ubuntu 22.04 LTSCentOS Stream 9,兼容性好、长期支持)
  • 实例已通过 SSH 登录(如 ssh -i your-key.pem ubuntu@xxx.xxx.xxx.xxx
  • 安全组已放行所需端口(如 22、80、443、自定义服务端口;Docker 本身无需额外开放,但容器服务需按需配置)

🐳 步骤一:更新系统 & 安装依赖

▶ Ubuntu/Debian(推荐)

# 更新软件包索引
sudo apt update && sudo apt upgrade -y

# 安装必要依赖
sudo apt install -y 
    ca-certificates 
    curl 
    gnupg 
    lsb-release 
    software-properties-common

▶ CentOS/RHEL/AlmaLinux/Rocky/Stream

sudo dnf update -y
sudo dnf install -y 
    yum-utils 
    device-mapper-persistent-data 
    lvm2 
    curl 
    wget 
    gnupg2 
    tar

💡 提示:腾讯云镜像源国内访问更快(可选优化)
Ubuntu 用户可执行 sudo sed -i 's/archive.ubuntu.com/mirrors.tencentyun.com/g' /etc/apt/sources.list
CentOS Stream 可用 sudo dnf config-manager --set-enabled powertools(如需)


🐳 步骤二:添加 Docker 官方 GPG 密钥和仓库(推荐方式)

⚠️ 不建议使用 curl https://get.docker.com | sh(存在安全风险,且可能安装旧版或非稳定版)

▶ Ubuntu/Debian

# 添加 Docker 官方 GPG 密钥(使用腾讯云镜像提速下载)
curl -fsSL https://mirrors.tencentyun.com/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

# 添加稳定版仓库(自动适配系统架构)
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://mirrors.tencentyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

# 刷新源
sudo apt update

▶ CentOS/RHEL/Stream(以 Stream 9 为例)

# 添加 Docker CE 仓库(使用腾讯云镜像)
sudo yum-config-manager 
    --add-repo https://mirrors.tencentyun.com/docker-ce/linux/centos/docker-ce.repo

# (可选)启用 extras 仓库(某些系统需要)
sudo dnf config-manager --set-enabled crb  # Stream 9+ 使用 crb 替代 extras

🐳 步骤三:安装 Docker Engine(稳定版)

▶ Ubuntu/Debian

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

▶ CentOS Stream 9 / RHEL 9+

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

✅ 验证安装:

docker --version        # 如:Docker version 26.1.4, build ...
docker compose version  # Docker Compose v2.x(已内置)

🐳 步骤四:启动并设置开机自启

# 启动 Docker 服务
sudo systemctl start docker

# 设置开机自启
sudo systemctl enable docker

# 验证状态(应显示 active (running))
sudo systemctl status docker

🐳 步骤五:(重要)将当前用户加入 docker 组(免 sudo 运行)

# 创建 docker 组(如不存在)
sudo groupadd docker

# 将当前用户(如 ubuntu/centos)加入 docker 组
sudo usermod -aG docker $USER

# 生效组权限(立即生效,无需重启,但需重新登录或执行以下命令)
newgrp docker  # 或直接关闭终端重连 SSH

✅ 测试免密运行:

docker run --rm hello-world
# 输出 "Hello from Docker!" 即成功!

🛡️ (可选)安全加固建议(腾讯云生产环境推荐)

项目 推荐操作
Docker Rootless 模式 高安全性场景建议启用(避免 root 权限容器),参考 Docker 官方 Rootless 文档
配置镜像提速器 编辑 /etc/docker/daemon.json,添加腾讯云镜像提速地址(提升 pull 速度):
{"registry-mirrors": ["https://mirror.ccs.tencentyun.com"]}
然后 sudo systemctl restart docker
限制容器资源 启动容器时使用 --memory, --cpus, --pids-limit 等参数防资源耗尽
禁用 insecure-registries 默认不配置,避免使用 http:// 私有仓库(除非内网且明确信任)
定期更新 Docker sudo apt update && sudo apt install --only-upgrade docker-ce

🧪 快速验证:部署一个 Nginx 容器(可选)

# 拉取并运行 Nginx(映射到 8080 端口)
docker run -d --name my-nginx -p 8080:80 -v $(pwd)/html:/usr/share/nginx/html:ro nginx:alpine

# 查看运行状态
docker ps

# 在浏览器访问 http://<你的CVM公网IP>:8080

🔑 注意:确保 CVM 安全组已放行 8080 端口!


❌ 常见问题排查

现象 解决方案
Permission denied while trying to connect to Docker daemon 检查是否执行 newgrp docker 或重新登录 SSH;确认 groups 命令输出含 docker
Cannot connect to the Docker daemon sudo systemctl status docker 看是否运行;检查 /var/run/docker.sock 权限
docker: command not found 检查安装是否完成;执行 hash -r 或重启 shell
Failed to fetch 源错误 检查网络(ping mirrors.tencentyun.com);临时换为官方源或阿里云镜像

恭喜!你已在腾讯云 CVM 上成功部署生产级 Docker 环境。
下一步可:

  • 使用 docker-compose 部署多容器应用(如 WordPress + MySQL)
  • 配合腾讯云 CLB(负载均衡)、CFS(文件存储)、TKE(容器服务)构建高可用架构
  • 集成 CI/CD(如 GitHub Actions + 腾讯云 CODING)

需要我为你提供:

  • docker-compose.yml 示例(Nginx + PHP-FPM + MySQL)
  • ✅ 腾讯云镜像仓库(TCR)私有镜像配置指南
  • ✅ Docker + Nginx 反向X_X + HTTPS(Let’s Encrypt)一键脚本
    欢迎随时告诉我 👇

祝你上云顺利,容器飞驰!🚀