Как я могу запускать один и тот же docker-compose.yml несколько раз на одном и том же докере-демоне с разными именами?
Мое положение. Пытается несколько раз запускать структуру докеры в одной коробке. Это мой 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
, связанным с другим mysql
.
Как это сделать? Предполагается, что он работает на подчиненных jenkins, а maven-исполнения не могут использовать mysql.
Я неудачно пробовал с параметром "-e KEY = VALUE" для docker-compose run
вместе с container_name
в файле компоновки докеров.
Не уверен, как подойти к этому, пожалуйста, помогите, спасибо.
Ответы
Ответ 1
Поэтому я слишком сосредоточился на использовании директив для изменения имен контейнеров вручную. Решение было намного проще.
docker-compose -p anything run code mvn clean test
docker-compose -p anything_else run code mvn clean test
Итак, это решение для имени проекта. Docker compose будет использовать значение, заданное параметром -p
в качестве префикса при создании имен контейнеров. Это означает, что нет столкновения.
Очень кстати!
Для получения дополнительной информации: документация вокруг опции имени проекта