什么是 -p 参数?
在使用 docker compose(或旧版 docker-compose)命令时,
-p 或 --project-name 选项用于指定项目的名称。
默认情况下,Compose 会使用当前目录名作为项目名,但通过 -p 可以自定义,
从而避免多个环境之间的容器/网络/卷冲突。
基本用法示例
docker compose -p myapp up -d
上述命令将以 myapp 作为项目名启动所有服务。
所有创建的容器名称将形如 myapp_service_1。
为什么需要自定义项目名?
- 在同一主机上运行多个相同 Compose 项目的不同实例(如开发、测试环境)
- 避免因目录名变更导致的资源识别混乱
- 提高可读性和可维护性
注意事项
- 项目名必须仅包含字母、数字、下划线、连字符和点号。
- 使用 -p 后,后续操作(如 down、logs)也需带上相同的 -p 参数才能正确识别项目。