什么是 -p 参数?
在使用 docker-compose 命令时,-p(或 --project-name)参数用于指定项目的名称。
Docker Compose 默认会使用当前目录的文件夹名作为项目名,但通过 -p 可以自定义,避免多个环境之间命名冲突。
基本语法
docker-compose -p <项目名> up
例如:
docker-compose -p myapp-dev up -d
这会将所有服务容器命名为 myapp-dev_service_1 的形式。
使用场景
- 在同一台机器上运行多个相同应用的不同环境(如 dev / test / prod)
- CI/CD 流水线中动态创建隔离的测试环境
- 避免因默认项目名重复导致容器冲突
注意事项
- 项目名必须符合 Docker 的命名规则(仅允许字母、数字、下划线和连字符)
- 使用
-p后,后续操作(如down、logs)也需带上相同的项目名 - 也可通过环境变量
COMPOSE_PROJECT_NAME设置项目名