Команда Docker-compose scale создает случайные порты для новых контейнеров

В настоящее время команда docker-compose scale создает случайные порты для новых контейнеров.

Есть ли способ указать порт для новых контейнеров?

1 ответ

В вашем docker-compose.yml,

postgres:
  image: postgres:9.5
  environment:
    - POSTGRES_PASSWORD=postgres
  ports:
    - 5432:5432

это будет связывать с 5432Однако обратите внимание, что по понятной причине вы не можете иметь более одного экземпляра на одном узле.

Чтобы использовать несколько экземпляров на одном узле, вы можете использовать динамические порты, как это

postgres:
  image: postgres:9.5
  environment:
    - POSTGRES_PASSWORD=postgres
  ports:
    - 5432+:5432

Таким образом, позволяя scale=4 создать 4 экземпляра, опубликованные на 5432, 5433, 5434, 5435Но все перенаправляются на их внутренние порты.

Другие вопросы по тегам