直接说结论:腾讯云轻量应用服务器(TencentCloud Lighthouse)完全支持 Docker,而且因为轻量服务器通常预装的是标准 Linux 发行版(如 Ubuntu、Debian、CentOS 7/8、Alibaba Cloud Linux 等),安装过程与在普通云服务器(CVM)或本地开发机上几乎没有区别。
很多新手容易把“轻量服务器”和“容器镜像服务”搞混,或者担心轻量服务器的资源限制导致 Docker 跑不起来。实际上,只要你的实例规格不是那种极度阉割的入门级(比如内存小于 512MB 且 Swap 未开启),Docker 都能跑得飞起。
下面我按最稳妥、最通用的方式,梳理一下在腾讯云轻量服务器上安装 Docker 的正确姿势。这里以目前最主流的 Ubuntu 20.04/22.04 和 CentOS 7/8 为例,其他系统逻辑类似。
核心前提:检查内核与资源
在安装前,先 SSH 登录到服务器,执行以下两个简单检查:
-
确认操作系统版本:
cat /etc/os-release确保你是 64 位系统,内核版本建议在 3.10 以上(现在的轻量服务器基本都是 4.x 或 5.x,没问题)。
-
确认内存情况:
free -h如果总内存只有 512MB,建议先配置 Swap 分区,否则 Docker daemon 启动时可能因为 OOM(内存溢出)被杀。对于 1GB 及以上内存的实例,无需额外操作。
方案一:官方推荐脚本安装(最快,适合所有用户)
这是 Docker 官方提供的自动化安装脚本,它会自动处理依赖、添加 GPG 密钥、配置仓库并安装最新稳定版。对于不想折腾源配置的用户,这是首选。
步骤:
-
下载并运行脚本:
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun注:加上
--mirror Aliyun是因为在国内访问 Docker Hub 官方源速度极慢甚至超时,阿里云镜像源对腾讯云内网或公网都更友好。如果你在内网环境,甚至可以忽略 mirror 参数,但强烈建议指定国内镜像源。 -
启动 Docker 服务:
sudo systemctl start docker sudo systemctl enable docker -
验证安装:
docker version docker run hello-world如果看到 “Hello from Docker!”,说明安装成功。
方案二:手动配置 YUM/APT 源安装(更可控,适合生产环境)
如果你希望明确知道安装了哪些包,或者需要特定版本的 Docker Engine,建议使用此方法。这也能避免自动脚本带来的潜在风险。
针对 Ubuntu/Debian 系
-
更新包索引并安装依赖:
sudo apt-get update sudo apt-get install 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://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null -
安装 Docker Engine:
sudo apt-get update sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin -
启动并测试:
sudo systemctl start docker sudo systemctl enable docker docker run hello-world
针对 CentOS/RHEL 系
-
安装依赖:
sudo yum install -y yum-utils device-mapper-persistent-data lvm2 -
设置仓库(使用阿里云镜像):
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -
安装 Docker Engine:
sudo yum install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin -
启动并测试:
sudo systemctl start docker sudo systemctl enable docker docker run hello-world
关键优化:解决国内拉取镜像慢的问题
安装完 Docker 后,默认配置是从 Docker Hub 拉取镜像,这在腾讯云上虽然比海外快,但仍然可能不稳定。为了获得最佳体验,必须配置镜像提速器。
腾讯云轻量服务器本身有内网优势,但如果你的业务需要跨地域访问,或者你使用了非腾讯云的区域,建议配置如下:
-
创建/编辑 daemon.json 文件:
sudo vi /etc/docker/daemon.json -
填入以下内容(使用阿里云公共镜像提速器):
{ "registry-mirrors": [ "https://<your-id>.mirror.aliyuncs.com", "https://docker.m.daocloud.io", "https://huecker.io" ] }注意:
<your-id>需要你自己在阿里云控制台获取个人专属的镜像提速地址。如果没有,可以使用 daocloud 或其他公开可用的提速器,但稳定性不如阿里云专属地址。 -
重启 Docker 服务使配置生效:
sudo systemctl daemon-reload sudo systemctl restart docker -
验证提速器是否生效:
docker info | grep -i registry你应该能看到你配置的镜像地址出现在输出中。
常见问题排查(避坑指南)
-
权限问题:每次都要加 sudo?
默认情况下,Docker 守护进程绑定的 Unix socket 属于 root 用户。如果你想用普通用户运行 docker 命令而不加 sudo,可以创建一个 docker 用户组,并将当前用户加入该组:sudo groupadd docker sudo usermod -aG docker $USER # 注销并重新登录,使组变更生效 -
防火墙冲突
腾讯云轻量服务器默认开启了云防火墙或安全组规则。如果你在容器内启动了 Web 服务(如 Nginx、MySQL),记得去腾讯云控制台 -> 轻量应用服务器 -> 防火墙 页面,添加入方向规则,开放对应端口(如 80, 3306 等)。Docker 内部 iptables 规则可能与主机防火墙不冲突,但云厂商的安全组是必须配置的。 -
Swap 空间不足导致容器崩溃
在低内存实例上,Docker 默认会尝试使用 swap。如果系统没有配置 swap,且物理内存耗尽,容器会被 OOM Kill。建议:# 创建 2GB swap 文件示例 sudo fallocate -l 2G /swapfile sudo chmod 600 /swapfile sudo mkswap /swapfile sudo swapon /swapfile # 写入 fstab 开机自动挂载 echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab -
Docker Compose 单独安装?
新版 Docker CE 已经内置了docker-compose-plugin。如果你通过上述方案二安装,docker compose(注意中间有空格,是子命令而非独立二进制文件)可以直接使用。如果习惯使用旧版docker-compose命令,可能需要单独下载安装二进制文件,但在新项目中,推荐使用插件模式。
总结
腾讯云轻量服务器不仅支持 Docker,而且是部署轻量级 Web 应用、开发测试环境的绝佳选择。按照上述步骤,特别是配置国内镜像提速器,你可以获得非常流畅的开发和部署体验。记住,安全组规则别忘开,这是新手最容易踩的坑。
云技术博客