Разница между инструкциями ARG и ENV в Dockerfile заключается в том, что они служат разным целям. 3
ARG позволяет задать переменные времени сборки. 3 Они доступны только в процессе сборки образа Docker и не могут быть доступны после запуска образа. 3
ENV используется для определения переменных среды. 3 Они доступны как в процессе сборки образа, так и во время выполнения. 3 В отличие от ARG-переменных, ENV-переменные сохраняются в итоговом образе и могут использоваться запущенным приложением. 2
Таким образом, ARG рекомендуется использовать, когда нужно настроить процесс сборки и создавать уникальные образы для разных случаев использования. 2 ENV подходит, когда нужно настроить среду приложения и использовать один и тот же образ с разными конфигурациями. 2