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

在腾讯云轻量应用服务器(Lighthouse)上配置 Docker Compose 的过程与在其他 Linux 服务器上基本一致,但需要注意轻量服务器的网络、防火墙以及镜像拉取速度等特有因素。以下是详细步骤:


✅ 前提条件

  1. 操作系统:推荐使用 Ubuntu 20.04/22.04、Debian 11/12 或 CentOS 7/8(Docker 官方支持)。
  2. 权限:使用 root 用户或通过 sudo 执行命令。
  3. 网络连接:确保能访问网络(用于拉取 Docker 镜像)。

📦 第一步:安装 Docker Engine

Ubuntu/Debian 系统:

# 更新包索引
sudo apt update

# 安装依赖
sudo apt install -y apt-transport-https ca-certificates curl gnupg lsb-release

# 添加 Docker GPG key
curl -fsSL https://download.docker.com/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://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

# 安装 Docker
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io

CentOS/RHEL 系统:

sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum install -y docker-ce docker-ce-cli containerd.io

▶️ 第二步:启动并启用 Docker 服务

sudo systemctl start docker
sudo systemctl enable docker

验证安装是否成功:

docker --version
docker run hello-world

如果 hello-world 容器正常运行,说明 Docker 已正确安装。


🐙 第三步:安装 Docker Compose

方法一:通过 pip 安装(推荐)

# 安装 Python pip(如未安装)
sudo apt install -y python3-pip   # Ubuntu/Debian
# 或
sudo yum install -y epel-release && sudo yum install -y python3-pip  # CentOS

# 安装 Docker Compose
sudo pip3 install docker-compose-plugin

注意:新版 Docker 推荐使用 docker compose(插件形式),而非独立的 docker-compose 二进制文件。

方法二:下载二进制文件(备用)

sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

验证安装:

docker compose version
# 或旧版命令
docker-compose version

🗂️ 第四步:创建项目目录并编写 docker-compose.yml

mkdir ~/myapp
cd ~/myapp

创建 docker-compose.yml 示例:

version: '3.8'

services:
  web:
    image: nginx:latest
    ports:
      - "8080:80"
    volumes:
      - ./html:/usr/share/nginx/html

  db:
    image: mysql:8.0
    environment:
      MYSQL_ROOT_PASSWORD: rootpassword
      MYSQL_DATABASE: mydb
    volumes:
      - db_data:/var/lib/mysql

volumes:
  db_data:

⚠️ 注意:轻量应用服务器默认安全组可能只开放 22 端口,需手动开放 8080 或其他所需端口(见下文“网络配置”部分)。


🚀 第五步:启动服务

docker compose up -d

查看运行状态:

docker compose ps

测试访问:

curl http://localhost:8080

🔒 第六步:配置腾讯云轻量应用服务器安全组

  1. 登录 腾讯云控制台
  2. 进入 轻量应用服务器 → 选择你的实例 → 安全组
  3. 添加规则:
    • 类型:自定义 TCP
    • 端口:8080(或其他你映射的端口)
    • 来源:0.0.0.0/0(或指定 IP)
    • 策略:允许

💡 建议仅对必要端口开放,避免安全风险。


🔄 第七步:常用管理命令

# 启动所有服务
docker compose up -d

# 停止所有服务
docker compose down

# 查看日志
docker compose logs -f web

# 重启某个服务
docker compose restart web

# 更新镜像并重建
docker compose pull
docker compose up -d --force-recreate

🛡️ 最佳实践建议

项目 建议
镜像源 若拉取慢,可配置国内镜像提速(如阿里云、腾讯云镜像提速器)
数据持久化 使用 volume 挂载数据库、配置文件等
环境变量 敏感信息不要硬编码,使用 .env 文件或 Docker Secrets
自动重启 在 docker-compose.yml 中设置 restart: unless-stopped
监控 可使用 htop、docker stats 监控资源使用情况

❓ 常见问题排查

1. 拉取镜像超时

# 配置 Docker 镜像提速(以阿里云为例)
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://<your-id>.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

2. 端口无法访问

  • 检查本地防火墙:sudo ufw status 或 sudo firewall-cmd --list-all
  • 检查腾讯云安全组是否放行对应端口

3. Docker Compose 命令不存在

确认安装的是 docker compose(插件)还是 docker-compose(独立二进制),两者命令不同。


✅ 总结

在腾讯云轻量应用服务器上配置 Docker Compose 的核心步骤:

  1. 安装 Docker Engine
  2. 安装 Docker Compose 插件
  3. 编写 docker-compose.yml
  4. 启动服务并配置安全组
  5. 测试访问和管理服务

整个过程简单高效,适合部署 Web 应用、数据库、中间件等组合服务。

如需进一步帮助(如 Nginx + PHP + MySQL 完整栈部署),可提供具体需求,我可给出完整配置示例。

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