腾讯云轻量应用服务器如何配置Docker Compose?

在腾讯云轻量应用服务器(Lighthouse)上配置 Docker Compose,需按以下清晰、安全、可复现的步骤操作。本文以 Ubuntu 22.04/24.04 或 CentOS 7/8/9 系统为例(推荐 Ubuntu 22.04 LTS),适用于新购或已有的轻量服务器。


✅ 前提条件

  • 已登录轻量服务器(通过 SSH 或 Web Shell)
  • 服务器已联网(确保 apt/dnf 可正常访问)
  • 推荐使用非 root 用户(如 ubuntulighthouse),必要时用 sudo

🔧 步骤一:安装 Docker(Docker Compose 依赖)

⚠️ 注意:Docker 官方已将 docker-compose(v1)弃用,推荐使用 Docker Compose Plugin(即 docker compose,v2+,集成在 docker 命令中,更稳定且与 Docker CLI 深度集成)。

✅ 推荐方式:安装 Docker Engine + Compose Plugin(官方推荐)

▶ Ubuntu/Debian 系统:

# 1. 更新系统 & 安装依赖
sudo apt update && sudo apt install -y 
    ca-certificates 
    curl 
    gnupg 
    lsb-release

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

# 3. 添加稳定版仓库(根据你的 Ubuntu 版本调整 codename,如 jammy=22.04, noble=24.04)
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

# 4. 安装 Docker Engine + CLI + Compose Plugin
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

# 5. 验证安装
docker --version          # 应输出类似:Docker version 26.x.x
docker compose version    # 应输出:Docker Compose version v2.x.x

▶ CentOS/RHEL/Rocky/AlmaLinux(以 CentOS 7+ 或 Rocky 9 为例):

# 启用 Extras 仓库(CentOS 7)或 CRB(Rocky/Alma 8+)
sudo dnf config-manager --enable crb  # Rocky/Alma 8+/CentOS 8+
# CentOS 7:
# sudo yum install -y epel-release

# 安装必要工具
sudo dnf install -y dnf-plugins-core

# 添加 Docker 仓库
sudo dnf config-manager 
    --add-repo 
    https://download.docker.com/linux/centos/docker-ce.repo

# 安装(注意:CentOS 7 需指定版本避免内核不兼容;推荐 Rocky/Alma 9)
sudo dnf install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

# 启动并设开机自启
sudo systemctl enable docker
sudo systemctl start docker

# 验证
docker --version && docker compose version

🛡️ 步骤二:权限配置(关键!避免每次用 sudo)

# 将当前用户加入 docker 组(替换 your_user 为实际用户名,如 ubuntu)
sudo usermod -aG docker $USER

# 刷新组权限(无需重启,但需重新登录 Shell 或执行)
newgrp docker  # 或直接关闭重开 SSH 连接

# 验证(不加 sudo 能运行)
docker run --rm hello-world  # 应看到欢迎信息

✅ 成功标志:无 permission denied 错误,且 docker compose version 正常输出。


📁 步骤三:准备并运行 Docker Compose 项目

示例:部署一个 Nginx + Redis 的简单服务

# 创建项目目录
mkdir ~/myapp && cd ~/myapp

# 创建 docker-compose.yml
cat > docker-compose.yml << 'EOF'
version: '3.8'
services:
  web:
    image: nginx:alpine
    ports:
      - "80:80"
    volumes:
      - ./html:/usr/share/nginx/html:ro
  cache:
    image: redis:7-alpine
    command: redis-server --save 20 1 --loglevel warning
    healthcheck:
      test: ["CMD", "redis-cli", "ping"]
      interval: 10s
      timeout: 5s
      retries: 5
EOF

# 创建简单 HTML 页面(可选)
mkdir -p html
echo "<h1>Hello from Tencent Cloud LightHouse + Docker Compose!</h1>" > html/index.html

# 启动服务(后台运行)
docker compose up -d

# 查看状态
docker compose ps
docker compose logs -f  # 实时日志(Ctrl+C 退出)

✅ 访问 http://<你的轻量服务器公网IP> 即可看到页面。


🔐 补充:安全与生产建议(轻量服务器适用)

项目 建议
防火墙 腾讯云控制台 → 轻量服务器 → 安全组 中放行所需端口(如 80/443/22),禁用默认全通规则
HTTPS 使用 nginx-proxy + letsencrypt-companion 或手动配置 Certbot(需绑定域名)
数据持久化 将数据库、配置、上传文件等挂载到 /data 等独立目录(避免容器删除丢失)
自动更新 轻量服务器磁盘较小,定期清理:docker system prune -a -f && docker volume prune -f
监控 可选部署 cAdvisor + Prometheus,或使用腾讯云「云监控」插件

❌ 常见问题排查

现象 解决方案
Permission denied while trying to connect to Docker daemon 执行 sudo usermod -aG docker $USER + newgrp docker 或重登
docker compose: command not found 检查是否安装了 docker-compose-plugin(非旧版 docker-compose pip 包);确认 docker compose(无 -)是正确命令
Cannot connect to the Docker daemon sudo systemctl status docker → 若未运行则 sudo systemctl start docker
轻量服务器端口无法访问 ✅ 检查:① 服务器本地 curl -I http://localhost 是否通;② 腾讯云安全组是否放行该端口;③ 服务器防火墙(ufw/firewalld)是否拦截(轻量默认关闭,但建议确认)

📌 附:一键脚本(可选,仅用于测试环境)

# 复制粘贴运行(Ubuntu 22.04+)
curl -fsSL https://get.docker.com | sh && 
sudo usermod -aG docker $USER && 
newgrp docker && 
docker run --rm hello-world && 
echo "✅ Docker & Compose installed successfully!"

⚠️ 生产环境请勿直接执行未审核脚本,建议分步执行并理解每一步。


如需进一步帮助,例如:

  • 部署 WordPress / Nextcloud / Portainer 可视化面板
  • 配置 HTTPS(Nginx + Let’s Encrypt)
  • 使用腾讯云 COS 作为对象存储后端
  • Docker Compose 多环境(dev/staging/prod)管理

欢迎继续提问,我可以为你定制完整 YAML 和部署指南 👇

是否需要我为你生成一个 带 HTTPS、反向X_X、自动续签 的生产级 docker-compose.yml 模板?🚀

未经允许不得转载:CLOUD技术博 » 腾讯云轻量应用服务器如何配置Docker Compose?