SuperAPI AI 工具集

docker-compose

部署与运维

查看项目

更新于 10-16 06:13

技能介绍

用途:使用 Docker Compose 以声明式 YAML 编排多容器应用,适用于本地运行多容器应用、搭建开发环境、定义服务依赖与网络、管理多服务应用栈、创建可复现的开发环境。

前提:Docker Engine 及 Compose 插件(v2),具备基本 Docker 知识与 YAML 语法。

主要能力:docker-compose.yml 中定义 services、volumes、networks;支持 build 选项(context、dockerfile、args、target、cache_from)、环境变量与 env_file、端口映射(HOST:CONTAINER、仅本机、端口范围)与 expose、命名卷与绑定挂载及只读挂载、depends_on 与 healthcheck 条件依赖、自定义网络与别名、deploy 资源限制、多文件覆盖与合并、profiles 分组、watch 模式与热重载。

使用方式:常用命令包括 docker compose up -d、docker compose down、docker compose build、docker compose logs -f、docker compose ps、docker compose run --rm web npm test、docker compose exec web /bin/sh、docker compose up -d --scale worker=3。多文件场景:docker compose -f docker-compose.yml -f docker-compose.prod.yml up。Profile:docker compose --profile debug up。查看合并配置:docker compose config。

最佳实践:持久数据用命名卷,为数据库依赖定义 healthcheck,用 profiles 分离可选服务,密钥放 .env 且不提交,环境差异用 override 文件,固定镜像版本,用网络隔离服务组,开发使用 watch 模式。

限制:操作针对真实环境,应用前需确认目标、影响范围与回滚方案;未经明确批准不得部署到生产。文档导入,未附带上游脚本与模板。