Я пытаюсь установить имя хоста контейнера докеров (HOSTNAME env var) во время запуска, это скрипт .sh, указанный в ENTRYPOINT файла докеров:
#!/bin/sh
export HOSTNAME=something-$(hostname)
java $JAVA_OPTS -jar /app.jar
Я хочу, чтобы это новое имя хоста было видно для jvm.
Все, что я получаю, это стандартное имя хоста докера:
/ # env
HOSTNAME=04dbf311a3be
Когда я устанавливаю имя хоста вручную, используя этот экспорт выше, после запуска контейнера все работает нормально. Все запускается в рое с использованием файла стека компоновки.
EDIT1: я делаю это не во время сборки контейнера, а во время запуска
EDIT2: Чтобы было ясно, что у меня есть:
ДОКЕРСКИЙ РОЙ:
CONTAINER1
HOSTNAME=391fa2c7e184
CONTAINER2
HOSTNAME=39123a43242asd4
CONTAINER3
HOSTNAME=123123123123
что я хочу:
CONTAINER1
HOSTNAME=APPNAME-391fa2c7e184
CONTAINER2
HOSTNAME=APPNAME-123fa2c7e184
CONTAINER3
HOSTNAME=APPNAME-343fa345e184
И хотите, чтобы это автоматически устанавливалось при запуске n-контейнеров
как я пытаюсь добиться этого:
Я пытаюсь установить это в файле start.sh, вызываемом при запуске контейнера (указано в команде ENTRYPOINT в файле докеров):
#!/bin/sh
export HOSTNAME=something-$(hostname)
java $JAVA_OPTS -jar /app.jar
нет эффекта, HOSTNAME не изменяется