加油
努力

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

在腾讯云轻量应用服务器(Lighthouse)上安装 docker-compose,需注意:自 Docker Desktop 2.15+ 和 Docker Engine 24.0.0+ 起,docker-compose 已被官方弃用,推荐使用 docker compose(即内置的插件形式,无连字符)。但很多教程和脚本仍沿用旧名,因此需明确区分安装方式。

以下是 2024 年推荐的、兼容腾讯云轻量服务器(通常为 Ubuntu/Debian 或 CentOS/AlmaLinux)的正确安装方法,分两种主流场景:


✅ 前提条件(必须先完成)

确保已安装 Docker Engine(非 Docker Desktop,轻量服务器用社区版):

# Ubuntu/Debian(推荐腾讯云镜像源)
sudo apt update
sudo apt install -y curl gnupg2 software-properties-common
curl -fsSL https://mirrors.tencent.com/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://mirrors.tencent.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io
sudo usermod -aG docker $USER  # 将当前用户加入 docker 组
newgrp docker  # 或重新登录终端生效

💡 验证:docker --version 应输出 Docker version 24.x.x, build ...
若版本 ≥ 24.0.0,则默认已内置 docker compose(v2 插件),无需额外安装 docker-compose(v1)。


✅ 正确安装方式(按推荐优先级)

✅ 方式 1:使用 Docker 官方推荐 —— 启用内置 docker compose(推荐 ✔️)

适用于 Docker Engine ≥ 24.0.0(绝大多数新装环境):

# 1. 检查是否已内置(99% 新装已自带)
docker compose version

# 若提示 "unknown command 'compose'",说明插件未安装(极少见),手动安装插件:
mkdir -p ~/.docker/cli-plugins
curl -SL https://github.com/docker/compose/releases/download/v2.29.7/docker-compose-linux-x86_64 -o ~/.docker/cli-plugins/docker-compose
chmod +x ~/.docker/cli-plugins/docker-compose

# 验证
docker compose version  # 输出类似:Docker Compose version v2.29.7

✅ 优势:与 Docker 引擎深度集成、自动更新(随 Docker 升级)、支持 docker compose up/down 等原生命令,无需 sudo、不冲突、符合官方未来方向


⚠️ 方式 2:仅当必须使用旧版 docker-compose(v1)时(不推荐)

❗ 仅用于兼容极老项目(如依赖 docker-compose.yml v1/v2 语法且无法升级),且 Docker Engine < 24.0。
docker-compose(v1)已于 2023 年底正式 EOL,腾讯云轻量服务器新系统请勿使用此方式

# 不推荐!仅作参考(若真需要):
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
# 注意:v1 已停止维护,存在安全风险,请尽快迁移到 v2(即 docker compose)

🔍 验证安装是否成功(关键步骤)

# ✅ 推荐命令(v2 内置插件)
docker compose version

# ✅ 测试功能(创建一个简单服务)
echo 'version: "3.8"
services:
  nginx:
    image: nginx:alpine
    ports: ["8080:80"]' > docker-compose.yml

docker compose up -d
curl -s http://localhost:8080 | head -n 5  # 应返回 HTML 片段
docker compose down

🛑 常见错误与解决

问题 原因 解决方案
command not found: docker-compose(带连字符) 误用了旧命令名 ✅ 改用 docker compose(无连字符)
permission denied while trying to connect to the Docker daemon socket 用户未加入 docker sudo usermod -aG docker $USER && newgrp docker,或重启终端
docker compose: command not found(v2 插件缺失) Docker 版本过低或插件未安装 升级 Docker:sudo apt update && sudo apt install docker-ce docker-ce-cli;或手动下载插件(见方式1)
使用腾讯云镜像提速(可选优化) 国内拉取镜像慢 编辑 /etc/docker/daemon.json
{ "registry-mirrors": ["https://mirror.ccs.tencentyun.com"] }
然后 sudo systemctl restart docker

✅ 最终建议(腾讯云轻量用户专属)

  • 始终使用 docker compose(无连字符),它是 Docker Engine 24+ 的标准组件;
  • ✅ 通过腾讯云镜像源(mirrors.tencent.com)安装 Docker,速度更快更稳定;
  • ✅ 轻量服务器资源有限,避免安装 docker-desktop(仅限桌面系统);
  • ✅ 生产环境务必配置 dockerd 镜像提速器(见上表)。

需要我为你生成 一键安装脚本(适配 Ubuntu 22.04/24.04 或 CentOS 7/AlmaLinux 9),或帮你 将旧 docker-compose.yml 迁移到 v2 兼容格式?欢迎随时告诉我 👇

云服务器