Есть ли способ сделать аргумент сборки обязательным во время docker build
? Ожидаемое поведение было бы для сбоя сборки, если аргумент отсутствует.
Например, для следующего файла Docker:
FROM ubuntu
ARG MY_VARIABLE
ENV MY_VARIABLE $MY_VARIABLE
RUN ...
Я хотел бы, чтобы сборка завершилась с ошибкой ARG MY_VARIABLE
при построении с помощью docker build -t my-tag .
и передана при построении с помощью docker build -t my-tag --build-arg MY_VARIABLE=my_value .
.
Есть ли способ достичь такого поведения? Установка значения по умолчанию на самом деле не делает трюк в моем случае.
(Я запускаю Docker 1.11.1
on darwin/amd64
.)
ИЗМЕНИТЬ:
Один из способов сделать то, что я могу придумать, - запустить команду, которая терпит неудачу, когда MY_VARIABLE
пуст, например:
FROM ubuntu
ARG MY_VARIABLE
RUN test -n "$MY_VARIABLE"
ENV MY_VARIABLE $MY_VARIABLE
RUN ...
но, похоже, это не очень идиоматическое решение проблемы.