Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Docker生成标记存储库名称_Docker_Docker Build - Fatal编程技术网

Docker生成标记存储库名称

Docker生成标记存储库名称,docker,docker-build,Docker,Docker Build,可以通过docker build命令轻松构建docker映像 我想知道的是,在构建图像时,您可以给出的t标志。例如: $ docker build -t ouruser/sinatra:v2 . 根据文件,t标志用于标记和命名目的。Name是“:”之前的部分,tag是它后面的部分。在我们的示例中,名称是ouruser/sinatra,标记是v2 我想这应该是图像名称和标签。但显然,这个名称实际上是某个存储库名称?为什么我认为是这样?好吧,因为如果你想在这之后用命令列出图像: docker im

可以通过docker build命令轻松构建docker映像

我想知道的是,在构建图像时,您可以给出的t标志。例如:

$ docker build -t ouruser/sinatra:v2 .
根据文件,t标志用于标记和命名目的。Name是“:”之前的部分,tag是它后面的部分。在我们的示例中,名称是ouruser/sinatra,标记是v2

我想这应该是图像名称和标签。但显然,这个名称实际上是某个存储库名称?为什么我认为是这样?好吧,因为如果你想在这之后用命令列出图像:

docker images
您将得到如下列表:

REPOSITORY          TAG     IMAGE ID      CREATED        SIZE
ouruser/sinatra     latest  5db5f8471261  11 hours ago   446.7 M
砰!大震惊!您以为您正在创建一个名为的映像,而实际上,您指定了某个存储库!与此相关,我有一些问题:

  • 此存储库位于何处
  • 我可以在不创建存储库的情况下命名图像吗
  • 该存储库在何处以及如何使用,或者可以在何处使用
  • 在哪里可以找到有关此存储库的更多信息?我只找到了这个,老实说,这并不能说明什么:
  • 为什么通常使用由两部分组成的名称:somename/someothername

  • 谢谢你的帮助

    我相信这里混淆的是“存储库”一词。在Docker中,存储库是具有相同名称的图像的任何构建组,可能有多个标记。“注册表”服务器,如hub.docker.com或您自己的私有注册表,包含多个存储库,例如。对于不同版本的构建,一个存储库有多个标记

    在这样的背景下,回答你的问题:

  • 我们的用户/sinatra位于您的本地Docker主机上,直到您执行
    Docker推送操作
  • 否,存储库和标记是图像的名称
  • 在系统上本地时,您可以在本地使用此映像。一旦你把它推到一个注册表,你就可以把它拉到任何其他有权访问该注册表的Docker主机上。如果您执行
    docker保存
    ,您可以将该图像保存到另一台主机上的
    docker加载
  • 我肯定docs.docker.com上有关于这方面的文档,但我是从课堂上学到的
  • username/imagebase格式支持在hub.docker.com中推送到您自己的名称空间。如果没有这一点,无论是谁制作了第一张“Redis”图片,都会称之为“Redis”,而下一个人制作了自己的名为“Redis改进”的存储库,我们很快就会陷入一个混乱的名称中,不清楚是谁制作了什么以及什么是一张声誉良好的图片。您在本地制作的图像不需要这样命名,但仍然鼓励这样命名,因为您从hub.docker.com获取的图像如果由docker自己维护,则可能缺少用户名。没有你的用户名,你将不知道哪些图片是你拉下来的,哪些是你自己创建的

  • 这不是一个编程问题。尝试在ServerFault上提问。抱歉:(.也需要在那里提问mm..对于docker开发人员来说,这是一个很好的问题,可以让他们更好地了解他们的图像输出。值得添加5)类似的
    服务器[:port]/repo:tag
    用于。示例:
    192.168.1.1:5000/我的图像:v3