Подтвердить что ты не робот

Использование Docker-Compose для разворачивания нескольких экземпляров контейнера с различными конфигурациями

Я понимаю, что вы можете с помощью команды масштабирования пользовательской докеры скомпенсировать несколько контейнеров. Тем не менее, все они будут иметь одинаковую конфигурацию.

Можно ли запустить контейнер на том же хосте с разными конфигурациями (разные файлы .yml) на том же хосте?

Используя следующие команды:

docker-compose -f dev.yml up -d
docker-compose -f qa.yml up -d

будет запущен только контейнер qa.yml, чего я не хочу.

- изменить -

Вот что происходит, когда я пытаюсь запустить обе команды.

$ docker-compose -f compose/dev.yml up -d
compose_mydocker_1 is up-to-date
$ docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                  NAMES
905912df6e48        compose_mydocker  "/sbin/my_init"     2 days ago          Up 2 days           0.0.0.0:1234->80/tcp   compose_mydocker_1
$ docker-compose -f compose/qa.yml up -d
Recreating compose_mydocker_1...
$ docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                  NAMES
3fc912201224        compose_mydocker  "/sbin/my_init"     5 seconds ago       Up 5 seconds        0.0.0.0:1235->80/tcp   compose_mydocker_1

Мои qa.yml и dev.yml выглядят следующим образом:

mydocker: 
  build: ..

  ports:
    - "1234:80" #for dev.yml
   #- "1235:80" for qa.yml
  environment:
    - ENVIRONMENT=dev #and vice-versa for qa

  volumes:
    - ../assets/images:/var/www/assets
4b9b3361

Ответ 1

Что вам нужно сделать, это изменить название проекта. По умолчанию compose использует проект, основанный на текущем каталоге. В вашем случае вам нужны отдельные среды, поэтому вам нужны разные названия проектов.

Вы можете использовать либо docker-compose -p <project_name>, либо установить COMPOSE_PROJECT_NAME в среде.

Также обсуждается вопрос о том, как сохранить название проекта: https://github.com/docker/compose/issues/745