Невозможно получить heroku $ port в dockerfile - PullRequest
0 голосов
/ 17 декабря 2018

В докер-хабе есть контейнер, который при запуске открывает порт 9000 по умолчанию.Порт можно переопределить, передав переменную окружения server__port .

Я пытаюсь передать значение Heroku $ PORT в файл настройки, как показано ниже:

ENV server__port=$PORT
EXPOSE $PORT
CMD start.sh

Когдазапускается файл start.sh, и я вижу журнал, в котором server__port отображается пустым.

Если в переменную среды server__port добавить случайное значение '8889', то в журналах я вижу значение 8889, назначенное дляserver__port.

Я попытался использовать ARG, как показано ниже, и, к сожалению, получил пустое значение в переменной server__port.

ARG PORT
ENV server__port=$PORT
EXPOSE $PORT
CMD start.sh

Как получить значение порта Heroku и установить его в файле Docker?

1 Ответ

0 голосов
/ 18 декабря 2018

Понял, мне пришлось экспортировать переменную, как показано ниже.

Переменная будет определять порт, который будет использоваться приложением.Команда

CMD export CONF_listener__port=$PORT && sh ./start.sh && sh ./startServer.sh -Dclearreports.config="$DEFAULT_CONFIG" -Dsetupautoexecution=true
...