在腾讯云轻量应用服务器(Lighthouse)上配置 Docker Compose 是一个非常常见的需求,通常用于部署多容器应用(如 WordPress + MySQL、Nginx + Node.js等)。以下是详细步骤:
✅ 前提条件
- 已安装 Docker 和 Docker Compose
- 如果你使用的是腾讯云提供的“Docker 环境”镜像(如 Ubuntu 22.04 + Docker),通常已预装。
- 如果没有,请手动安装:
# 更新系统包
sudo apt update && sudo apt upgrade -y
# 安装 Docker
curl -fsSL https://get.docker.com | sh
# 启动并设置开机自启
sudo systemctl enable docker
sudo systemctl start docker
# 安装 Docker Compose(v2 版本推荐)
sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-linux-x86_64" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
# 验证安装
docker --version
docker-compose --version
💡 注意:
docker-compose命令在新版中可能被docker compose(无连字符)替代。建议使用docker compose。
📁 第二步:创建项目目录与 docker-compose.yml
例如,创建一个简单的 Nginx + Hello World 示例:
mkdir ~/myapp
cd ~/myapp
创建 docker-compose.yml 文件:
version: '3.8'
services:
web:
image: nginx:latest
ports:
- "8080:80"
volumes:
- ./html:/usr/share/nginx/html
restart: always
hello:
image: hello-world
# 仅用于测试,实际项目中可替换为其他服务
创建测试页面:
mkdir html
echo "<h1>Hello from Docker Compose!</h1>" > html/index.html
▶️ 第三步:启动服务
docker compose up -d
-d表示后台运行。- 首次运行会自动拉取镜像。
🔍 第四步:验证是否正常运行
# 查看正在运行的容器
docker compose ps
# 查看日志
docker compose logs -f
# 浏览器访问 http://<你的服务器公网IP>:8080
你应该能看到 “Hello from Docker Compose!” 页面。
🛠️ 第五步:常用管理命令
| 命令 | 说明 |
|---|---|
docker compose up -d |
后台启动所有服务 |
docker compose down |
停止并移除容器、网络(保留卷和数据) |
docker compose stop |
停止服务但不删除 |
docker compose start |
启动已停止的服务 |
docker compose logs -f |
实时查看日志 |
docker compose exec web bash |
进入 web 容器终端 |
🔐 安全建议(腾讯云轻量服务器特别注意事项)
-
开放防火墙端口
登录腾讯云控制台 → 轻量应用服务器 → 防火墙 → 添加规则:- 协议:TCP
- 端口:8080(或你自定义的端口)
- 来源:0.0.0.0/0(或指定 IP)
-
使用非 root 用户运行 Docker(可选但推荐)
Docker 默认需要 root 权限。你可以将当前用户加入 docker 组:
sudo usermod -aG docker $USER
# 重新登录生效
newgrp docker
-
定期更新镜像和系统
docker compose pull docker compose up -d -
备份数据卷
如果使用volumes持久化数据,记得定期备份:docker volume ls docker run --rm -v <volume_name>:/data -v $(pwd):/backup alpine tar czf /backup/data.tar.gz -C /data .
🧩 高级示例:WordPress + MySQL
version: '3.8'
services:
db:
image: mysql:8.0
environment:
MYSQL_ROOT_PASSWORD: rootpassword
MYSQL_DATABASE: wordpress
MYSQL_USER: wpuser
MYSQL_PASSWORD: wppassword
volumes:
- db_data:/var/lib/mysql
restart: always
wordpress:
image: wordpress:latest
ports:
- "8080:80"
environment:
WORDPRESS_DB_HOST: db
WORDPRESS_DB_USER: wpuser
WORDPRESS_DB_PASSWORD: wppassword
WORDPRESS_DB_NAME: wordpress
depends_on:
- db
restart: always
volumes:
db_data:
启动后访问 http://<IP>:8080 即可看到 WordPress 安装界面。
❓ 常见问题排查
| 问题 | 解决方案 |
|---|---|
docker-compose: command not found |
确认安装路径是否正确,或使用 docker compose |
| 端口被占用 | 修改 ports 映射,如 "8081:80" |
| 无法访问网页 | 检查腾讯云防火墙和安全组是否放行端口 |
| 容器启动失败 | 使用 docker compose logs <service_name> 查看详细错误 |
✅ 总结
在腾讯云轻量应用服务器上配置 Docker Compose 的核心步骤:
- 安装 Docker 和 Docker Compose
- 编写
docker-compose.yml - 使用
docker compose up -d启动 - 配置防火墙开放端口
- 通过浏览器或 API 访问服务
这种方式非常适合个人开发者、小团队快速部署 Web 应用、数据库、中间件等组合服务。
如需自动化部署,可结合 GitHub Actions、CI/CD 或脚本实现一键部署。
如有具体应用场景(如 Laravel + Redis + MySQL),可提供更详细的配置模板。
轻量云Cloud