Docker Compose 多容器编排
docker compose(v2 插件,旧命令是 docker-compose)按 compose.yaml 启动多容器应用,适合本地开发和单机部署。它管理容器、网络和卷,但不负责多节点调度。
docker compose up -d
docker compose up -d --build
docker compose ps
docker compose logs -f web
docker compose exec web sh
docker compose run --rm web npm test
docker compose build
docker compose pull
docker compose restart web
docker compose config
docker compose up --scale web=3 -d
docker compose -f compose.prod.yaml up -d
docker compose --env-file .env.prod up -d
docker compose --profile debug up -d
docker compose down
docker compose down -v
docker compose 还是旧的 docker-compose;两者参数有差异。down -v 会删除命名卷和其中的数据;执行前确认备份。.env > compose 文件默认值;排查时用 config 看最终值。depends_on 只保证启动顺序,不保证服务就绪;需要健康检查或重试逻辑。build 的上下文和 Dockerfile 路径相对 compose 文件;路径写错会构建失败。latest 会导致环境漂移;生产环境固定版本或 digest。--profile 要写全。localhost 指向容器自己;访问宿主机服务要用 host.docker.internal 或网络别名。docker-buildx — 多平台镜像构建docker — 单容器操作podman — 无守护进程替代合上页面,先回答,再展开对照。
depends_on 能保证依赖服务已经就绪吗?如果不能,应该补充什么?docker compose down -v 前必须确认什么?docker compose config 查看最终值;优先级为 shell > .env > compose 文件默认值。down -v 会删除命名卷及其中的数据。