Подтвердить что ты не робот

Установка имени хоста для контейнера, работающего в Kubernetes

Я хочу установить имя хоста в контейнере, запущенном внутри Kubernetes, но Kubernetes, кажется, переопределяет все, что я установил во время выполнения.

Я попытался установить /etc/hostname в образ докеры. Я использую Kubernetes и включая echo "host.example.com > /etc/hostname" в CMD в файле Docker.

Кажется, что флаг docker -h установлен для имени хоста. Есть ли способ указать мне в контроллере репликации, что он должен запустить контейнер со специальным флагом?

Контейнер Debian, если он помогает.

4b9b3361

Ответ 1

Мой предыдущий ответ был неправильным, отредактирован с правильной информацией

Флаг -h для docker run будет устанавливать имя хоста контейнера при его создании.

Проверьте это: docker run -h test.example.com -it ubuntu /bin/bash

В команде docker start нет одинакового аргумента -h или --hostname. Невозможно изменить имя хоста существующего контейнера, только новое из изображения.

Однако w/r/t Kubernetes: существует проблема с в Github относительно того, как Kubernetes обрабатывает имена хостов. Не похоже, что Kubernetes напрямую устанавливает настройку имени хоста-докера, но вы можете влиять на него с помощью своего имени подкачки