Окружающее поведение Docker

#docker #dockerfile

#docker #dockerfile

Вопрос:

Постановка проблемы: запуск контейнера docker из указанного ниже файла Dockerfile приводит к неожиданному для меня результату. Может кто-нибудь, пожалуйста, объяснить: => Dockerfile

 FROM alpine:latest

ENV abc="one"

ENV abc="two" def=$abc

ENV ghi="three"

ENTRYPOINT echo $abc $def $ghi
 

=> Вывод: два один три

=> Вывод -по-моему: два два три

Может кто-нибудь, пожалуйста, объяснить, как именно поведение docker в таком случае?

Ответ №1:

Обработка Docker происходит послойно, поэтому он не знает значения переменной, пока слой не будет завершен. Это правильный вывод: два один три