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

在腾讯云服务器(CVM)上部署 Docker 环境,核心流程与在普通 Linux 服务器(如 CentOS、Ubuntu)上安装并无本质区别。腾讯云的优势在于提供了丰富的镜像源和更便捷的实例管理工具。

以下基于国内最通用的 UbuntuCentOS 系统,提供标准化的部署方案。

一、前置准备:安全组配置

在开始安装前,务必确认云服务器的安全组规则。Docker 默认通过 2375 (Unix Socket) 或 2376 (TLS) 端口通信,但更重要的是业务容器映射的端口(如 80, 443, 8080 等)。

  • 登录腾讯云控制台 -> 计算 -> 实例 -> 找到对应 CVM -> 点击“安全组”。
  • 确保入方向规则已放行你需要使用的业务端口,否则即使 Docker 启动成功,外部也无法访问服务。

二、系统环境初始化

无论何种系统,建议先更新软件包索引,并安装基础依赖工具。

1. Ubuntu / Debian 系列

# 更新软件源
sudo apt-get update

# 安装必要的基础依赖
sudo apt-get install -y ca-certificates curl gnupg lsb-release

2. CentOS / RHEL / Rocky Linux / AlmaLinux 系列

# 安装 yum-utils 和删除旧版本(如果存在)
sudo yum install -y yum-utils
sudo yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine

# 配置 Docker 官方 YUM 仓库(国内用户建议使用阿里云镜像提速源,避免下载超时)
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

注意:腾讯云官方镜像通常已预装部分基础组件,但为了稳定性,手动指定阿里源是提升国内下载速度的最佳实践。


三、安装 Docker Engine

根据系统不同,执行对应的安装命令。

场景 A:Ubuntu

# 导入 GPG 密钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

# 设置 Docker CE 稳定版仓库
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

# 安装 Docker
sudo apt-get update
sudo apt-get install -y docker-ce docker-ce-cli containerd.io

# 启动并设置开机自启
sudo systemctl start docker
sudo systemctl enable docker

场景 B:CentOS

# 直接安装最新版 Docker CE
sudo yum install -y docker-ce docker-ce-cli containerd.io

# 启动并设置开机自启
sudo systemctl start docker
sudo systemctl enable docker

四、验证与优化(关键步骤)

安装完成后,需验证环境是否正常运行,并进行国内环境下的性能优化。

1. 运行测试容器

docker run hello-world

若看到欢迎信息,说明内核级功能正常。

2. 配置国内镜像提速器

由于 hub.docker.com 在国内连接不稳定,强烈建议配置镜像提速地址。腾讯云 CVM 本身对腾讯云镜像中心有优化,但使用阿里云或腾讯云提供的公共提速地址通常更快。

编辑 /etc/docker/daemon.json

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": [
    "https://docker.mirrors.ustc.edu.cn",
    "https://hub-mirror.c.163.com",
    "https://mirror.baidubce.com"
  ]
}
EOF

提示:上述地址为示例,请根据当前网络状况选择。配置完成后必须重启 Docker 服务:

sudo systemctl daemon-reload
sudo systemctl restart docker

3. 免密执行(可选)

为了避免每次输入 sudo,可以将当前用户加入 docker 用户组:

sudo usermod -aG docker $USER
# 使组权限立即生效,无需重启,但需要重新登录终端
newgrp docker

五、腾讯云特色资源利用

作为腾讯云用户,你可以充分利用云原生生态:

  1. 私有镜像仓库(TCR)
    如果你构建了自定义镜像,不要推送到公网 Docker Hub。推荐使用 腾讯云容器镜像服务 (TCR)。它内网传输速度极快,且支持私有化部署,安全性更高。

    • 命令示例:docker login tcr.tencentcloudapi.com
  2. 云硬盘挂载
    如果容器数据需要持久化,建议使用腾讯云 CBS(云块存储) 挂载到实例,并通过 -v 参数将宿主机目录映射到容器,或者直接使用 volume 机制配合云盘快照进行备份。

  3. 监控与日志
    开启云监控插件后,Docker 的资源使用情况(CPU、内存、IO)会实时上报到腾讯云监控大盘,便于排查性能瓶颈。

常见问题排查

  • 权限拒绝 (Permission denied):检查是否已添加用户到 docker 组,或尝试 sudo 运行。
  • 端口无法访问:90% 的情况是安全组未放行,其次检查容器内部 iptables 规则(腾讯云 CVM 默认已处理 NAT,一般无需额外配置)。
  • 镜像拉取失败:优先检查 /etc/docker/daemon.json 中的镜像提速源是否有效,或切换至其他提速地址。

按照以上步骤,即可在腾讯云服务器上快速构建稳定、高效的 Docker 开发或生产环境。

未经允许不得转载:CLOUD云枢 » 在腾讯云服务器上怎么部署Docker环境?