Переменные env не подставлены в файл docker - PullRequest
0 голосов
/ 21 февраля 2020
FROM alpine:3.11

COPY out/ /bin/

CMD ["command", "--flag1", "${HOST}", "--flag2", "${PORT}", "--flag3", "${AUTH_TOKEN}"]

Используется файл docker. Я загружаю переменные env во время запуска через файл env. Но переменные не подставляются при запуске command. Если я переопределю CMD и exe c в контейнер, я смогу увидеть envs. Что мне здесь не хватает?

1 Ответ

1 голос
/ 21 февраля 2020

Вы используете CMD в режиме exe c. Переключитесь в режим оболочки, и все получится. Что касается переменных окружения, вам нужна оболочка. больше чтения

ваш пример:

CMD command --flag1 ${HOST} --flag2 ${PORT} --flag3 ${AUTH_TOKEN}

Полный универсальный c пример:

Dockerfile:

FROM debian:stretch-slim
CMD echo ${env}

Прогон:

docker build .
docker run --rm -e env=hi <image id from build step>
hi
...