文档对我来说不是很清楚。我在Dockerfile目录中运行docker build -f .
,它似乎构建成功,很棒。我不确定下一步该怎么做,我看一下它告诉我的文档https://docs.docker.com/engine/reference/builder/ When you’re done with your build, you’re ready to look into Pushing a repository to its registry.
带我到这里https://docs.docker.com/engine/userguide/containers/dockerrepos/#contributing-to-docker-hub我没有兴趣发布它或创建一个帐户。
我的另一个选择是命名构建我猜,对吧?如果我运行docker build -t <nodebb> .
,那么我会获得file exists: .
。如果我运行docker build -f <nodebb> .
,那么我会获得no such file or directory: nodebb
。
所以我有点迷失,我希望我能更好地理解文档,但我不会,并会很感激指导。谢谢!
答案 0 :(得分:1)
<>
您看到的错误是因为&#39;&lt;&#39;和&#39;&gt;&#39;由bash解释。 docker build -t <nodebb> .
尝试执行以下操作:
nodebb
并将其传输到docker build -t
。docker build -t < nodebb
的输出并将其写入文件.
这失败有几个原因:
-t
需要一个参数,标记名称.
已经存在(这是您看到的错误)通常,您可以通过转义参数来避免这种情况:
docker build -t "<nodebb>" .
但是,这会导致另一个错误:
Error parsing reference: "<nodebb>" is not a valid repository/tag
有充分理由,标签名称中不允许<>
。相反,请使用有效标记:
docker build -t nodebb .
您还可以运行没有标签的构建图像;如果您构建图像,最后一行将始终如下:
Successfully built 028edf7c13d1
您可以使用docker run 028edf7c13d1
运行该图片。