Встречается на собеседованиях • сегодня

В чем разница между ARG и ENV в Dockerfile

ARG и ENV — это инструкции в Dockerfile для работы с переменными, но они имеют разные области применения:

  • ARG (аргументы сборки):
    • Используются только во время сборки образа (docker build).
    • Не сохраняются в финальном образе.
    • Передаются через --build-arg при сборке.
    • Пример:
      dockerfile
      ARG APP_VERSION=1.0
      RUN echo "Building version ${APP_VERSION}"
  • ENV (переменные окружения):
    • Сохраняются в образе и доступны во время выполнения контейнера (docker run).
    • Могут быть переопределены через -e при запуске.
    • Пример:
      dockerfile
      ENV DB_HOST=localhost
      CMD ["echo", "DB host is ${DB_HOST}"]

Ключевое отличие: ARG — для сборки, ENV — для работы контейнера.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы