6月3日 00:04
Docker Compose 怎么用?多容器编排和常用命令速查
Docker Compose 用一个 YAML 文件定义和运行多容器应用。一条命令启动所有服务,不用逐个 docker run。
docker-compose.yml 基本结构
关键配置:
- build: . — 用当前目录的 Dockerfile 构建镜像
- ports: 宿主机端口:容器端口
- environment: 环境变量(同一网络内用服务名互访,如 DB_HOST: db)
- depends_on: 启动依赖(只控制启动顺序,不等服务就绪)
- volumes: 数据持久化(.:/app 挂载源码方便开发热更新)
常用命令
开发 vs 生产
开发时加 volume 挂载源码,代码修改实时生效:
生产时去掉 volume 挂载,用构建好的镜像:
用多个 compose 文件覆盖配置:
常见问题
端口冲突:某个端口已被占用。改宿主机端口(3001:3000)或停掉占用进程。
容器启动后立即退出:docker compose logs web 查看日志定位原因。
Volume 数据残留:docker compose down 不删除 Volume。要清空数据用 docker compose down -v。