Переменная среды выполнения Docker недоступна
Мне нужно передать переменную во время выполнения, когда запускается команда docker run, и то же самое нужно прочитать внутри контейнера.
Это команда запуска Docker, которую я использую
docker run -it -e "URL=test" test bash
Но переменная URL недоступна внутри контейнера. Мой Dockerfile как ниже
FROM ubuntu
RUN apt-get update
RUN echo "test"
RUN echo "The url is " $URL >> /out.log
Внутри контейнера out.log показывает только следующий вывод
URL-адрес
Что мне не хватает?
1 ответ
Решение
Если вам нужна эта переменная во время сборки, используйте --build-arg
- документация здесь.
Если вам нужна эта переменная во время выполнения (контейнера), используйте переменную среды и определите ENTRYPOINT
скрипт, который делает все, что нужно, используя эту переменную.