По документации Dockerfile ARG ,
Инструкция ARG определяет переменную, которую пользователи могут передавать во время сборки сборщику с помощью команды сборки docker, используя -build-arg = флаг.
, чтобы принять аргумент в качестве части сборки, мы используем --build-arg
.
Документация Dockerfile ENV :
Инструкция ENV устанавливает значение переменной среды.
Нам также необходимо включить оператор ENV
, так как CMD
будет выполнен после завершения сборки, а ARG
будет недоступен.
FROM busybox
ARG ENVIRONMENT
ENV ENVIRONMENT $ENVIRONMENT
CMD echo $ENVIRONMENT
приведет к тому, что переменная окружения будет установлена в образе, чтобы она была доступна во время команды docker run
.
docker build -t test --build-arg ENVIRONMENT=awesome_environment .
docker run -it test
Это будет echo awesome_environment
.