如果没有传递--build-arg参数,则失败。

4

我在 Dockerfile 中有这个:

ARG aws_access_key_id
ARG aws_secret_access_key

尽管我没有使用任何 --build-arg 选项,它仍然成功构建了,如果缺少这些参数,我该如何使它失败?

1
虽然 @kichik 的答案肯定是“可行的”,但是你不应该使用 ARG 存储机密信息,因为任何有访问镜像权限的人都可以通过 docker history <image-name> 查看。相反,应该使用 ENV 来存储机密信息。 - Nick Mosher
1个回答

4
您可以设置一些永远不会使用的默认值,然后测试这些值。例如:
FROM alpine
ARG arg=NO_VALUE
RUN [ ! "${arg}" == "NO_VALUE" ]

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接