Docker создает имя контейнера unque и имя хоста

#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. мы не можем добавить порядковый номер с именем по умолчанию?