努力
加油

在腾讯云轻量应用服务器上如何正确安装docker-compose?

在腾讯云轻量应用服务器(Lighthouse)上安装 Docker Compose,核心逻辑其实和在其他 Linux 发行版(如 Ubuntu、CentOS、Debian)上没有本质区别。因为轻量应用服务器底层就是标准的 Linux 系统。

但既然你提到了腾讯云环境,我就结合一些实际踩坑经验和最佳实践,给你一套最稳妥、最干净的操作方案。别去搞那些花里胡哨的一键脚本,容易残留垃圾文件或者权限混乱。

第一步:确认你的服务器 OS 版本

登录 SSH 后,先看清楚你用的是哪个系统,命令不同会有细微差别:

cat /etc/os-release
  • 如果是 Ubuntu/Debian:用 apt
  • 如果是 CentOS/RHEL/Alibaba Cloud Linux:用 yum 或 dnf

注意:腾讯云轻量应用服务器默认镜像很多是 Ubuntu 20.04/22.04 或 Debian 11,这部分用户最多。以下以 Ubuntu/Debian 为例,CentOS 用户把 apt 换成 yum 即可。


第二步:正确安装 Docker Engine(前提条件)

Docker Compose 需要依赖 Docker Engine。很多人直接装 Compose 发现报错,是因为没装 Docker 或者 Docker 版本太老。

1. 卸载旧版本(如果有)

sudo apt-get remove docker docker-engine docker.io containerd runc

2. 设置 Docker 官方源(关键!)

不要直接用 apt install docker.io,那个版本往往很老,且功能不全。要用官方源。

# 更新包索引
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://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 docker-ce docker-ce-cli containerd.io docker-compose-plugin

重点:这里安装了 docker-compose-plugin,这是新版 Docker 推荐的方式(V2)。但为了兼容性和通用性,我们通常还是会单独下载二进制版的 docker-compose 作为备用,或者直接使用插件版。下面我会给出两种方案。

3. 验证 Docker 是否正常运行

sudo systemctl start docker
sudo systemctl enable docker
sudo docker run hello-world

如果看到 Hello from Docker!,说明 Docker 引擎没问题。


第三步:安装 Docker Compose(二选一)

方案 A:使用 Docker 官方插件(推荐,适合新手)

如果你上面第二步已经安装了 docker-compose-plugin,那你现在可以直接用了:

docker compose version

注意这里是 docker compose(空格),不是 docker-compose(横杠)。这是 V2 版本的语法。

优点:随 Docker 升级而自动升级,无需手动管理二进制文件。
缺点:某些老旧的第三方工具可能只认 docker-compose 命令。

方案 B:独立安装二进制文件(经典,兼容性最好)

如果你希望命令是 docker-compose,或者你的 Docker 版本较老不支持插件,建议用这种方式:

  1. 下载最新稳定版

    # 查看 GitHub Releases 页面获取最新版本号,例如 v2.24.0
    sudo curl -L "https://github.com/docker/compose/releases/download/v2.24.0/docker-compose-linux-x86_64" -o /usr/local/bin/docker-compose
  2. 赋予执行权限

    sudo chmod +x /usr/local/bin/docker-compose
  3. 验证

    docker-compose version

腾讯云轻量服务器特别提醒:如果你的服务器内存只有 1GB 或更低,建议在 /etc/sysctl.conf 中开启 swap,防止 Docker 容器启动时 OOM(内存溢出)导致崩溃。


第四步:配置免 sudo 运行(提升体验)

每次都要敲 sudo docker-compose up 很麻烦,而且容易出错。建议将当前用户加入 docker 组:

sudo usermod -aG docker $USER
newgrp docker

然后重新连接 SSH 或重启终端,之后就可以直接运行 docker-compose up 了。


第五步:腾讯云特有注意事项(避坑指南)

  1. 安全组放行
    腾讯云轻量应用服务器有独立的“防火墙”设置(在控制台 -> 防火墙规则)。

    • 如果你要跑 Web 服务(如 Nginx、Node.js),记得在控制台添加规则,放行对应端口(如 80, 443, 3000 等)。
    • 不要直接开放 22 以外的所有端口,除非你清楚自己在做什么。
  2. 数据持久化
    轻量应用服务器的磁盘性能虽然不错,但建议将重要数据挂载到云硬盘或使用本地存储的合理路径。
    在 docker-compose.yml 中,务必使用 volumes 映射主机目录,而不是让数据存在容器内。否则容器重建数据就没了。

  3. 网络模式
    默认使用 bridge 模式即可。如果需要宿主机直接访问容器端口,确保 -p 参数映射正确,并且安全组已放行。

  4. 国内提速
    Docker Hub 在国内拉取镜像可能较慢。可以在 /etc/docker/daemon.json 中添加镜像提速器(阿里云、腾讯云都提供免费的个人版提速地址):

    {
      "registry-mirrors": ["https://<你的专属提速地址>.mirror.aliyuncs.com"]
    }

    修改后重启 Docker:sudo systemctl restart docker


总结

在腾讯云轻量应用服务器上安装 Docker Compose,最简路径是:

  1. 通过官方源安装最新版 Docker CE + docker-compose-plugin。
  2. 将用户加入 docker 组。
  3. 在控制台防火墙放行所需端口。
  4. 使用 docker compose up -d 启动服务。

这样既保证了安全性,又避免了版本冲突问题。如果遇到具体报错,贴出错误日志再查,大概率是端口占用或权限问题。