### ARG 构建参数 格式:`ARG <参数名>[=<默认值>]` 构建参数和 `ENV` 的效果一样,都是设置环境变量。所不同的是,`ARG` 所设置的构建环境的环境变量,在将来容器运行时是不会存在这些环境变量的。但是不要因此就是用 `ARG` 保存密码之类的信息,因为 `docker history` 还是可以看到所有值的。 `Dockerfile` 中的 `ARG` 指令是定义参数名称,以及定义其默认值。该默认值可以在构建命令 `docker build` 中用 `--build-arg <参数名>=<值>` 来覆盖。`--build-arg` 中的参数名,必须在 `Dockerfile` 中用 `ARG` 定义过了。如果对应参数并未定义,那么构建时将会得到报错。