Sobes.tech
Back to questions
Junior — Middle
74

Каким способом можно передать переменные, меняющиеся во время сборки Docker-образа?

Answer from AI

sobes.tech AI

Переменные, меняющиеся во время сборки Docker-образа, можно передавать с помощью аргументов сборки (ARG). В Dockerfile объявляют аргумент с помощью инструкции ARG, а при запуске сборки через команду docker build передают значения с помощью флага --build-arg.

Пример:

FROM alpine
ARG APP_VERSION
RUN echo "Версия приложения: $APP_VERSION"

Сборка с передачей аргумента:

docker build --build-arg APP_VERSION=1.2.3 -t myapp:1.2.3 .

Важно: ARG доступен только во время сборки и не сохраняется в конечном образе как переменная окружения. Если нужно, чтобы переменная была доступна в контейнере, используют ENV или передают через переменные окружения при запуске контейнера.