在我的教程中,它创建了克隆Dockerfile(Dockerfile2)并构建了第二个Docker。
docker build . -f Dockerfile2 -t
但是我不明白.
的作用。
根据Docker文档。:
-t
:标签...
-f
:文件...
该命令在做什么? -谢谢
答案 0 :(得分:4)
.
表示您当前所在的目录。 Dockerfile在其中。如果您不在Dockerfile的目录中,则会收到错误消息。
完整命令:docker build path -f Dockfile -t containerName
。还有文档docker build [OPTIONS] PATH | URL | -。
答案 1 :(得分:4)
很明显,标签丢失了。无论如何,您telling Docker:
嘿Docker,the current directory是您的构建上下文,因此请从该位置复制所有内容(except
.dockerignore
文件中提到的文件和目录),然后使用{Dockerfile2
文件中的{3}}。另外,请instructions使用提供的标签,以便我轻松参考。
如果您省略文件(删除-f argument
),则使用默认的Dockerfile
文件。
答案 2 :(得分:1)
用法:
docker build [OPTIONS]路径|网址| -
build
:从Dockerfile构建映像
.
:指定PATH
为.
,因此本地目录中的所有文件都获得tar
d并发送到Docker守护程序。 PATH
指定在Docker守护程序上构建的“上下文”文件的查找位置。
--file , -f
:Dockerfile的名称(默认为“ PATH / Dockerfile”)。
--tag , -t
:名称和(可选)“名称:标签”格式的标签。您可以将多个标签应用于图像。
所以,正在发生的是: Docker我想从一个名为Dockerfile2的Dockerfile构建映像,并在当前路径中用值(您未设置标签的值)进行标记。