Команда 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
Но все перенаправляются на их внутренние порты.