#docker #docker-compose
Вопрос:
могу ли я знать, если я планирую установить container_name и реплику 3 в моем docker compose, как получить уникальное имя, поскольку контейнер 3 не может иметь одно и то же имя. Также имя хоста. Как это можно сделать
Ответ №1:
Простой ответ-НЕТ.
имя контейнера
Укажите пользовательское имя контейнера, а не сгенерированное имя по умолчанию.
container_name: my-web-container
Поскольку имена контейнеров Docker должны быть уникальными, вы не можете масштабировать службу более чем на 1 контейнер, если вы указали пользовательское имя. Попытка сделать это приводит к ошибке.
Примечание при использовании развертывания стека docker
Параметр container_name игнорируется при развертывании стека в режиме роя
Как упоминалось выше, если вы явно зададите имя контейнера, то он не будет использовать сгенерированное по умолчанию имя, с которым он не может работать replicas
. Единственный способ-позволить ему сгенерировать имя контейнера для вас, затем он будет следовать следующему правилу , которое выглядит единственным способом совместимости replicas
, поскольку оно используется sequencenumber
для различения разных контейнеров:
<currentpath>_<servicename>_<sequencenumber>
Комментарии:
1. мы не можем добавить порядковый номер с именем по умолчанию?