在Docker日常使用中,很多同学对docker run和docker-compose的边界搞不清楚。今天用实战案例讲清楚:什么时候用Compose、怎么写Compose文件、如何一键启停整套服务。
一、什么时候该用 Docker Compose
当你的服务由多个关联容器组成时(例如 Nginx + PHP-FPM + MySQL + Redis),强烈建议使用docker-compose。它支持依赖管理、网络互通、环境隔离和一键启停,避免一条条手动docker run的繁琐和遗漏。
二、一个最小可用的示例
version: '3.8'
services:
web:
image: nginx:latest
ports:
- "8080:80"
depends_on:
- php
php:
image: php:8.2-fpm
volumes:
- ./www:/var/www/html
db:
image: mysql:8.0
environment:
MYSQL_ROOT_PASSWORD: yourpassword
volumes:
- db_data:/var/lib/mysql
volumes:
db_data:
三、常用命令
docker-compose up -d:后台启动整套服务docker-compose down:停止并移除容器(保留数据卷)docker-compose logs -f:实时查看日志docker-compose restart:重启服务
四、避坑提示
- 环境差异用环境变量控制,不同环境(开发/测试/生产)使用不同
.env文件 - 容器间通信用服务名,不要写死IP
- 按项目拆分目录,避免多个项目共用一套Compose
掌握Compose后,本地开发环境搭建效率能提升一倍,强烈推荐大家上手。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END













![囧次元[樱花动漫]去广告纯净版 - 浩宇工作室](https://umwx.oss-cn-shenzhen.aliyuncs.com/wp-content/uploads/2023/01/7ef194ec378b-1024x768.jpg)

![[电脑软件]抖音采集/下载工具TikTokDownloader 5.3 - 浩宇工作室](https://umwx.oss-cn-shenzhen.aliyuncs.com/wp-content/uploads/2024/05/20240510151922787-234818cqqjoo83p5s2us3e-1024x516.png)







暂无评论内容