gpt4 book ai didi

docker - 为什么在docker build命令中使用-f

转载 作者:行者123 更新时间:2023-12-02 18:14:20 24 4
gpt4 key购买 nike

我遵循this K8s tutorial,在文件中间,有以下指令:

12. Now let’s build an image, giving it a special name that points to our local cluster registry.

$docker build -t 127.0.0.1:30400/hello-kenzan:latest -f applications/hello-kenzan/Dockerfile applications/hello-kenzan

我不明白为什么您需要使用 -f applications/hello-kenzan/Dockerfile指向dockerfile。

在docker build的人中:
-f, --file=PATH/Dockerfile
Path to the Dockerfile to use. If the path is a relative path and you are
building from a local directory, then the path must be relative to that
directory. If you are building from a remote URL pointing to either a
tarball or a Git repository, then the path must be relative to the root of
the remote context. In all cases, the file must be within the build context.
The default is Dockerfile.

所以-f指向dockerfile,但是我们已经在build命令 docker build ...applications/hello-kenzan的末尾给出了dockerfile的路径,那么为什么还要编写两次?我错过了什么吗?

最佳答案

这是因为他可能有多个名为Dockerfile的文件,并且使用-f告诉docker不要在当前目录(如果有)中使用Dockerfile,而应在applications/hello-kenzan中使用Dockerfile。

虽然在此特殊示例中没有必要执行此操作,但我感谢教程创建者向您展示了使用PATH的选项,并将-f指向特定位置以向您(想要学习的人)展示可以使用不在PATH中的Dockerfile(即,当您有多个Dockerfile要使用其构建时,或者该文件的名称不是Dockerfile而是myapp-dockerfile时)

关于docker - 为什么在docker build命令中使用-f,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55259717/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com