azure - Docker:你可以拥有的 build-arg 的数量有限制吗?
问题描述
我正在使用 Azure 管道并尝试构建 docker 映像,但遇到此错误:
"docker build" requires exactly 1 argument.
我有超过 20 个 --build-arg ENV_VAL=$(ENV_VAL)
(示例),并且正在考虑可能由于构建参数的数量而引发该错误。
有人有想法吗?
解决方案
1,这可能是由于缺少.
docker 命令末尾的。
docker build -f MyDockerfile -t proj:myapp .
最后.
将构建上下文指定为当前工作目录。
2,如果您传递的 build-args 中有空格。它也可能导致上述错误。请检查$(ENV_VAL)
您传入的 build-args 中是否有空格。为了避免这种情况。您可以将变量括在引号中。见下文:
--build-arg ENV_VAL="$(ENV_VAL)"
3,如果您复制并粘贴了您的命令,请同时检查您的docker命令的格式。您的命令中可能存在一些导致错误的隐藏格式。
如果您在 azure 管道中使用 docker 任务。您可以选择路径Build context
。选择**
以将构建上下文设置为 dockerfile 所在的文件夹。