我的情况。试图在同一个盒子上多次运行一个docker-compose结构。这是我的 docker-compose.yml :
version: '3'
services:
code:
image: organization:java-maven
links:
- mysql:mysql
volumes:
- "${PWD}:/home/ubuntu/src"
mysql:
image: organization:mysql
使用docker-compose run code mvn clean test
运行两次会创建两个code
容器和一个mysql
容器。
现在,我希望一个code
与一个mysql
相关联,另一个 code
与另一个 {{相关联1}}。
我如何做到这一点?这应该是在jenkins奴隶上运行的,并且maven执行不能共享mysql。
我很难尝试使用" -e KEY = VALUE"在docker撰写文件中mysql
和docker-compose run
的选项。
不确定如何处理此问题,请帮助,谢谢。
答案 0 :(得分:15)
因此,我过分关注使用指令手动更改容器名称。解决方案要容易得多。
docker-compose -p anything run code mvn clean test
docker-compose -p anything_else run code mvn clean test
所以,这是项目名称解决方案。在创建容器名称时,Docker compose将使用选项-p
给出的值作为前缀。这意味着没有碰撞。
非常方便!