在不同的docker-compose文件中使用不同的服务名称,或者在使用相同的服务名称时使用不同的项目名称:
例如,我们有两个服务:web和db。
docker-compose.yml
services:
web:
image: nginx
ports:
- "80:80"
db:
image: postgresql
restart: always
environment:
POSTGRES_USER: postgres
docker-compose.override.yml
services:
web:
ports:
- "8080:80"
在另外一个项目中,我们也有web和db这两个服务,但是项目名称为project2,如下:
docker-compose.yml
services:
web:
image: apache
ports:
- "80:80"
db:
image: mysql
restart: always
environment:
MYSQL_USER: root
docker-compose.override.yml
services:
web:
ports:
- "8080:80"
这样,在docker-compose up时,我们可以指定不同的项目名称来启动服务,如下:
docker-compose -p project1 up -d
docker-compose -p project2 up -d
这样,就可以避免在不同的docker-compose文件中相同的服务名称造成的冲突问题。