如何在具有不同名称的同一个docker守护程序上多次运行相同的docker-compose.yml?

时间:2017-01-24 15:08:50

标签: docker docker-compose

我的情况。试图在同一个盒子上多次运行一个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撰写文件中mysqldocker-compose run的选项。

不确定如何处理此问题,请帮助,谢谢。

1 个答案:

答案 0 :(得分:15)

因此,我过分关注使用指令手动更改容器名称。解决方案要容易得多。

docker-compose -p anything run code mvn clean test

docker-compose -p anything_else run code mvn clean test

所以,这是项目名称解决方案。在创建容器名称时,Docker compose将使用选项-p给出的值作为前缀。这意味着没有碰撞。

非常方便!

更多阅读:documentation around profile option