努力
加油

如何在腾讯云轻量服务器Ubuntu系统上快速搭建Docker环境?

在腾讯云轻量应用服务器(Lighthouse)上跑 Ubuntu 装 Docker,其实是个非常经典且高效的组合。轻量服务器资源有限但性价比高,Docker 又是资源隔离的好手,两者搭配得当能省下不少折腾底层环境的精力。

下面这套流程是我在实际生产环境和日常开发中验证过的“最快路径”,去掉了那些花里胡哨的废话,直接上干货。

第一步:系统准备与源更新

很多新手踩坑是因为直接用 apt install docker.io 装了个旧版本或者非官方维护的版本。强烈建议直接使用 Docker 官方仓库,这样后续升级和维护都更省心。

先登录你的轻量服务器 SSH,执行以下命令初始化环境:

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

# 2. 安装必要的依赖工具,用于添加 HTTPS 源的 GPG 密钥和存储库
sudo apt install -y ca-certificates curl gnupg lsb-release

第二步:配置 Docker 官方 APT 源

这一步是核心,目的是让 Ubuntu 知道去哪里下载最新、最稳定的 Docker CE(社区版)。

# 3. 添加 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

# 4. 设置稳定版仓库
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

注:这里用 $(lsb_release -cs) 会自动识别你当前的 Ubuntu 版本(如 jammy, focal 等),不用手动改版本号,避免出错。

第三步:安装 Docker Engine

现在源配好了,直接安装即可。

# 5. 再次更新索引以获取新添加的源
sudo apt update

# 6. 安装 Docker 引擎、容器运行时和 compose 插件
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin

安装完成后,启动服务并设置为开机自启:

sudo systemctl start docker
sudo systemctl enable docker

第四步:免 sudo 运行 Docker(可选但推荐)

默认情况下,每次运行 docker 命令都需要加 sudo,比较麻烦且容易暴露权限问题。我们可以将当前用户加入 docker 用户组。

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

# 8. 将你的当前用户加入 docker 组
sudo usermod -aG docker $USER

# 9. 重启生效,或者重新登录 SSH
newgrp docker

验证一下是否成功:

docker run hello-world

如果看到 Hello from Docker! 以及一系列说明文字,恭喜你,环境搭建完成。

第五步:针对腾讯云轻量服务器的特别优化

轻量服务器通常内存较小(比如 1核 1G 或 2核 2G),Docker 默认配置可能会因为 OOM(内存溢出)导致容器崩溃。你需要做一些微调。

1. 调整 systemd-resolved 或 DNS

有时候在国内网络环境下,拉取镜像慢或者失败,需要配置国内镜像提速器。

编辑 /etc/docker/daemon.json:

sudo nano /etc/docker/daemon.json

如果没有这个文件就新建一个,填入以下内容(这里以阿里云和腾讯云常用的镜像提速为例,你也可以申请自己的腾讯云镜像提速器地址):

{
  "registry-mirrors": [
    "https://mirror.ccs.tencentyun.com",
    "https://mirror.baidubce.com"
  ],
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "10m",
    "max-file": "3"
  }
}

解释:log-opts 是为了防止日志文件无限增长撑爆磁盘,这在轻量服务器上非常重要。

保存后重启 Docker 服务:

sudo systemctl restart docker

2. 检查防火墙

腾讯云轻量服务器自带防火墙。如果你要在容器内暴露端口(比如 80, 8080, 3306),记得去腾讯云控制台 -> 防火墙规则中放行对应端口,否则网络访问不了。

常见问题排查

  • Q: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

    • A: 检查服务状态 sudo systemctl status docker。如果是刚装完,尝试重启一下服务器再试。
  • Q: 拉取镜像特别慢或超时

    • A: 确认上面的 daemon.json 中的镜像提速器配置是否正确生效。可以用 docker info | grep Registry 查看当前使用的镜像源。
  • Q: 容器启动后无法访问网络

    • A: 检查轻量服务器的 IPv4 公网 IP 是否绑定正确,以及云厂商的安全组/防火墙策略是否放行了相关流量。

总结

这套流程走下来,大概 5-10 分钟就能搞定一个干净、标准、可维护的 Docker 环境。对于轻量服务器用户来说,重点不在于“能不能装”,而在于“装完后怎么省资源”和“怎么保证稳定性”。记住定期清理无用镜像和容器(docker system prune),比盲目增加配置更重要。