Есть 2 варианта, как заставить это работать:
Использовать существующий код в docker-compose-prod.yml
и установить переменную среды LANDING_PAGE_DOMAIN
:
export LANDING_PAGE_DOMAIN=test.com
, затем выполните шаг сборки без передачи аргументов сборки:
docker-compose -f docker-compose.production.yml build nginx
Комментарий / удаление 2 строк из docker-compose-prod.yml
файла:
args:
LANDING_PAGE_DOMAIN: ${LANDING_PAGE_DOMAIN}
Тогда вы сможете построить его с передачей аргументов во время сборки:
docker-compose -f docker-compose-prod.yml build --build-arg
LANDING_PAGE_DOMAIN="test.com" nginx
Причина, по которой он в настоящее время не работает, заключается в том, чтоэти две строки в файле docker-compose-prod.yml
явно устанавливают аргумент LANDING_PAGE_DOMAIN
, который будет заполнен переменной окружения ${LANDING_PAGE_DOMAIN}
.
И когда вы запускаете docker-compose build
с параметром --build-arg
, он не устанавливает никаких переменных env, но буквально передает аргументы для шага build
.