UUID的默认Docker参数

UUID的默认Docker参数,docker,dockerfile,uuid,docker-build,Docker,Dockerfile,Uuid,Docker Build,如果未将ARG作为生成参数提供,是否可以将其默认为新的唯一ID 如果没有提供构建参数,那么在构建时是否可能失败 如果构建参数不正确,则在构建时可能会失败 没有提供 是的,但是您应该在Dockerfile中将任何默认值设置为ARGS,或者如果设置了默认值,则可以忽略条件中的默认值 FROM alpine ARG NODE_ENV RUN if [ -z ${NODE_ENV} ];then \ echo "No value provided for build ARGS, please p

如果未将
ARG
作为生成参数提供,是否可以将其默认为新的唯一ID

如果没有提供构建参数,那么在构建时是否可能失败

如果构建参数不正确,则在构建时可能会失败 没有提供

是的,但是您应该在Dockerfile中将任何默认值设置为
ARGS
,或者如果设置了默认值,则可以忽略条件中的默认值

FROM alpine
ARG NODE_ENV
RUN if [ -z ${NODE_ENV} ];then \
    echo "No value provided for build ARGS, please provide NODE_ENV, like --build-arg NODE_ENV=dev" \
    exit 1; \
    else \
    echo "NODE_ENV is passed, value is ${NODE_ENV}"; \
    fi
所以如果你想

docker build --build-arg NODE_ENV=test -t test_arg .
它会树立形象,但如果你喜欢

docker build  -t test_arg .
在这种情况下,生成将失败,并将打印一条消息以传递NODE_ENV