Когда я использую
docker run --it --name myContainer --hostname myShortHostName ubuntu bash
Это добавит myShortHostName
в файл /etc/hostname
. И 172.169.X.X myShortHostName
в /etc/hosts file
.
но в этом случае я использую команду hostname -f
для получения FQDN
моего контейнера, поскольку в FQDN
нет записи /etc/hosts
. И я не могу редактировать его, потому что он заменяется каждый раз при загрузке контейнера.
И если бы я использовал:
docker run --it --name myContainer --hostname myShortHostName.DOMAIN ubuntu bash
Это добавит FQDN
имя в файл /etc/hostname
, что не является рекомендуемым соглашением по правилам hostname
, и это не соглашение, которое я использовал для использования в моей системе, которую я администрирую.
Рекомендуемый метод установки полного доменного имени - сделать имя хоста псевдонимом для полного имени, используя /etc /hosts, DNS или NIS. Например, если имя хоста было "ursula", в /etc /hosts может быть строка, которая читает
127.0.1.1 ursula.example.com ursula
Есть ли способ (на самом деле мне нужен идеальный способ, а не редактировать файлы с помощью скрипта после загрузки контейнера), чтобы добавить только короткий myShortHostName
в файл /etc/hostname
файл FQDN в /etc /hosts с помощью команды docker run
или какие-нибудь докеры встроенные команды или методы?
Мне нужно получить ShortHostName по hostname -s
или hostname
и ShortHostName.ДОМЕН (FQDN) с помощью hostname -f
внутри контейнера Docker без добавления полного доменного имени в файл /etc/hostname
.