在腾讯云轻量应用服务器(Lighthouse)上搭建 Docker 环境,通常分为系统初始化、Docker 安装配置、基础验证和安全加固四个阶段。以下是基于 Ubuntu/Debian 系统的标准操作流程(CentOS 步骤略有不同,文末附注)。
第一阶段:系统初始化与网络检查
登录到轻量服务器的 SSH 终端后,首先执行基础更新和安全组检查。
-
更新系统软件源
sudo apt update && sudo apt upgrade -y # 如果是 CentOS: sudo yum update -y -
确认防火墙状态
轻量服务器默认可能开启了ufw或firewalld。建议先暂时关闭或仅开放必要端口,避免干扰 Docker 通信。# Ubuntu/Debian sudo ufw disable # 或者保持开启但放行 Docker 相关端口(如 80, 443, 自定义端口) # CentOS (如果已安装 firewalld) sudo systemctl stop firewalld注意:生产环境建议不要永久关闭防火墙,而是通过腾讯云控制台的安全组规则放行所需端口。
第二阶段:安装 Docker Engine
推荐使用官方提供的脚本自动安装最新版,也可以手动安装指定版本。
方法 A:使用官方一键安装脚本(推荐)
这是最快捷的方式,会自动处理依赖和环境变量。
curl -fsSL https://get.docker.com | bash -s docker
方法 B:手动安装(适合需要固定版本或无网络环境)
-
安装依赖包
sudo apt install -y ca-certificates curl gnupg lsb-release -
添加 Docker 官方 GPG 密钥
sudo mkdir -p /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg -
设置软件源
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 -
安装 Docker Engine
sudo apt update sudo apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
第三阶段:配置 Docker 服务与用户权限
为了让非 root 用户也能运行 Docker 命令,并优化启动方式。
-
启动 Docker 服务并设置开机自启
sudo systemctl start docker sudo systemctl enable docker -
将当前用户加入 docker 用户组
假设你的用户名是root或你当前的登录用户:sudo usermod -aG docker $USER重要:执行完此命令后,必须重新登录 SSH或执行
newgrp docker才能生效,否则后续命令会报permission denied。 -
验证安装
docker run hello-world如果看到欢迎信息,说明安装成功。
第四阶段:安全加固与最佳实践
在公网环境下,直接暴露 Docker 端口存在风险,建议进行以下配置。
-
配置远程访问限制(可选)
如果你需要通过外部工具(如 VS Code Remote)连接,需修改/etc/docker/daemon.json:{ "log-driver": "json-file", "log-opts": { "max-size": "10m", "max-file": "3" }, "storage-driver": "overlay2" }注意:默认情况下 Docker 只监听本地 socket (
unix:///var/run/docker.sock),不监听 TCP 端口。如需远程连接,必须配置 TLS 证书,不建议直接在公网开启 TCP 端口。 -
配置镜像提速器
由于国内网络原因,拉取官方镜像可能很慢。建议在/etc/docker/daemon.json中添加阿里云或腾讯云的镜像提速地址:{ "registry-mirrors": [ "https://docker.m.daocloud.io", "https://huecker.io" ] }修改后重启服务:
sudo systemctl daemon-reload sudo systemctl restart docker -
清理空间(定期维护)
轻量服务器磁盘通常较小,建议定期清理未使用的资源:docker system prune -a
补充:CentOS 系统差异
如果你的轻量服务器使用的是 CentOS 7/8/9,主要区别在于:
- 安装依赖:使用
yum install -y yum-utils代替apt。 - 配置源:
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo yum install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin - 防火墙:需使用
systemctl start firewalld并放行端口,或直接停止firewalld。
常见问题排查
- 问题:执行
docker ps提示permission denied。- 解决:确认是否已执行
sudo usermod -aG docker $USER并重新登录了 SSH 会话。
- 解决:确认是否已执行
- 问题:拉取镜像超时。
- 解决:检查
/etc/docker/daemon.json中的registry-mirrors配置是否正确,或更换为其他提速地址。
- 解决:检查
- 问题:容器无法访问网络。
- 解决:检查轻量服务器的安全组规则是否放行了出站流量(通常默认允许),以及宿主机是否有正确的路由配置。
完成上述步骤后,你的腾讯云轻量服务器已成功搭建好稳定的 Docker 运行环境,可以开始部署各类容器化应用了。
CLOUD技术博