AFAIK, такого способа внедрить переменные среды с помощью файла на этапе сборки с использованием Dockerfile не существует.Однако в большинстве случаев люди в конечном итоге используют сценарий entrypoint
и вводят переменные во время docker run
или docker-compose up
.
В случае необходимости вам может понадобиться написать оболочку-оболочку, которая будет динамически изменять значения в Dockerfile
, принимая в качестве входных данных текстовый файл пары ключ-значение, или сделать его таким, как показано ниже, ноИмя файла ENV должно быть включено в Dockerfile, как предложено @thaJeztah в link -
COPY my-env-vars /
RUN export $(cat my-env-vars | xargs)
Это открытый вопрос - https://github.com/moby/moby/issues/28617