在腾讯云的轻量应用服务器(Lighthouse)上安装 Docker,核心逻辑与在普通 CentOS 云服务器或本地 CentOS 环境中是一致的。但需要注意,腾讯云轻量服务器默认镜像可能较新(如 CentOS 7.9 或 Stream 8/9),且网络环境相对封闭,因此步骤需严谨执行以避免依赖缺失或权限问题。
以下是基于 CentOS 7 和 CentOS 8/Stream 8 两种主流场景的详细安装指南。请根据你的实际系统版本选择对应方案。
第一步:确认系统版本
登录 SSH 后,首先执行以下命令查看内核及系统版本:
cat /etc/os-release
uname -r
- 如果显示
centos且版本为7,按 方案 A 操作。 - 如果显示
centos且版本为8或stream,按 方案 B 操作。
⚠️ 注意:CentOS 7 已于 2024 年 6 月停止官方维护,部分软件源可能失效。若你使用的是全新轻量服务器,建议优先考虑 CentOS 8+ 或改用 Ubuntu/Debian 镜像。
方案 A:CentOS 7 安装 Docker
1. 卸载旧版本(如有)
sudo yum remove docker
docker-client
docker-client-latest
docker-common
docker-latest
docker-latest-logrotate
docker-logrotate
docker-engine
2. 安装必要依赖
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
3. 设置 Docker 稳定版仓库
由于国内访问 Docker 官方仓库较慢,建议使用阿里云镜像源提速:
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
4. 更新 yum 缓存并安装 Docker
sudo yum makecache fast
sudo yum install -y docker-ce docker-ce-cli containerd.io
5. 启动 Docker 并设置开机自启
sudo systemctl start docker
sudo systemctl enable docker
6. 验证安装
docker version
docker info
看到 Client 和 Server 版本信息即表示成功。
方案 B:CentOS 8 / Stream 8 安装 Docker
CentOS 8 已转向使用 dnf 作为包管理器,且默认容器运行时是 podman,我们需要安装标准的 docker-ce。
1. 移除冲突的包(如有)
sudo dnf remove podman buildah
2. 安装依赖
sudo dnf install -y yum-utils device-mapper-persistent-data lvm2
3. 设置 Docker 仓库(推荐使用阿里云镜像)
sudo dnf config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
4. 安装 Docker Engine
sudo dnf install -y docker-ce docker-ce-cli containerd.io
5. 启动并启用服务
sudo systemctl start docker
sudo systemctl enable docker
6. 验证
docker --version
关键配置优化(强烈推荐)
1. 配置 Docker 镜像提速器
在国内环境下,直接从 Docker Hub 拉取镜像速度极慢甚至超时。必须配置阿里云或其他镜像提速器。
以阿里云为例(需注册阿里云账号获取专属地址):
# 创建或编辑 daemon.json
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://你的专属ID.mirror.aliyuncs.com"]
}
EOF
# 重启 Docker 服务使配置生效
sudo systemctl daemon-reload
sudo systemctl restart docker
💡 如果你没有阿里云账号,也可以使用腾讯云提供的镜像提速器(需登录腾讯云控制台申请):
{ "registry-mirrors": ["https://mirror.ccs.tencentyun.com"] }
2. 非 root 用户使用 Docker
默认情况下,Docker 守护进程绑定 Unix socket,只有 root 用户或 docker 组用户才能访问。为避免每次命令前加 sudo,可创建 docker 组并将当前用户加入:
sudo groupadd docker
sudo usermod -aG docker $USER
⚠️ 修改后需要重新登录 SSH 会话或重启服务器才能生效。
3. 防火墙与安全组设置
腾讯云轻量服务器默认开启防火墙(firewalld 或 iptables),并且有独立的“安全组”规则。
- 内部防火墙:确保 Docker 所需端口未被阻断。通常 Docker 会自动管理 iptables/nftables 规则。
- 外部安全组:如果你要暴露容器端口(如 80、443、3306),必须在腾讯云控制台 → 轻量应用服务器 → 防火墙/安全组中添加入方向规则,允许相应 TCP 端口通过。
常见问题排查
| 问题现象 | 可能原因 | 解决方案 |
|---|---|---|
docker: command not found |
未正确安装或未加载环境变量 | 检查是否执行了 yum install,尝试重启终端 |
Cannot connect to the Docker daemon |
Docker 服务未启动 | 执行 sudo systemctl start docker |
Permission denied |
当前用户不在 docker 组 | 执行 sudo usermod -aG docker $USER 并重新登录 |
| 拉取镜像超时 | 未配置镜像提速器 | 参考上文配置 daemon.json 中的 registry-mirrors |
No space left on device |
磁盘空间不足 | 执行 df -h 检查磁盘,清理无用镜像 docker system prune |
总结
在腾讯云轻量服务器上安装 Docker 的核心步骤是:
- 根据 CentOS 版本选择
yum或dnf; - 添加阿里云或腾讯云镜像源以提升下载速度;
- 安装
docker-ce,docker-ce-cli,containerd.io; - 配置镜像提速器避免拉取失败;
- 设置开机自启并确保安全组放行所需端口。
完成以上步骤后,即可正常使用 Docker 部署 Web 服务、数据库、中间件等应用。如需进一步自动化管理,可结合 docker-compose 使用。
CLOUD云枢