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

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