通过摘要提取Docker映像

我想问为什么在提取docker映像时需要同时指定名称和摘要?

docker pull ubuntu@sha256:45b23dee08af5e43a7fea6c4cf9c25ccf269ee113168c19722f87876677c5cb2

仅通过摘要还是在整个docker存储库的上下文中摘要不够独特是不够的吗?

例如这样的

docker pull sha256:45b23dee08af5e43a7fea6c4cf9c25ccf269ee113168c19722f87876677c5cb2
ananxiao 回答:通过摘要提取Docker映像

您必须将 image 选项传递给命令,如下所示:

docker image pull [OPTIONS]名称:[TAG @ DIGEST]

例如:

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  xmlns:b64="https://github.com/ilyakharlamov/xslt_base64"
  version="1.0">
<xsl:import href="xml-to-string.xsl"/>
  <xsl:output method="text" encoding="utf-8" />
  <xsl:strip-space elements="*"/>
  <xsl:include href="base64.xsl"/>
  
  
  <xsl:template match="/">
  <xsl:call-template name="b64:encode" >
            <xsl:with-param name="asciiString">
              <xsl:apply-templates select="." mode="xml-to-string" />
            </xsl:with-param>
        </xsl:call-template>
   </xsl:template>

</xsl:stylesheet>
,

注册表API具有很多实现,因此您可以拥有多个注册表服务器(Docker Hub,自托管解决方案(如Harbor)以及其他商业托管选项,包括Github和Gitlab)。注册表API本身是围绕向存储库发出请求而构造的,因此,您不能仅提取摘要,不仅需要知道要与哪个注册表服务器通信,还要知道要从该服务器上提取哪个存储库名称。

api for a pull将请求:

GET /v2/<name>/manifests/<reference>

名称和参考参数标识图像,并且是必需的。参考可能包含标签或摘要。

(该文档中引用的“名称”是存储库名称。)

docker命令反映了此API设计,要求提供映像名称。如果不使用标签或摘要,它将使用“最新”作为默认值。取消注册表名称时,它默认为Docker Hub。而且,如果您还保留了一个用户名,则它会以library/作为注册表名称的前缀,所有正式镜像都位于Docker Hub上。

因此,对ubuntu@sha256:45b23dee08af5e43a7fea6c4cf9c25ccf269ee113168c19722f87876677c5cb2的拉取请求将变成对registry-1.docker.io的{​​{1}}(Docker Hub的注册表API服务器)的请求,并参考您列出的sha256。

尝试从拉取中删除存储库名称将导致语法无效(docker将其称为参考格式),因为它无法从一无所有推断存储库,并且没有默认存储库名称。

,

摘要在docker存储库中的所有映像中可能是唯一的,但是您认为更常见的用法是什么?是拉名为ubuntu的图像还是拉名为sha256:45b23dee08af5e43a7fea6c4cf9c25ccf269ee113168c19722f87876677c5cb2的图像?

使用摘要进行拉动也不常见。使用图像标签。

例如:docker pull ubuntu:16.04

,

图像从注册表中提取。映像名称包括注册表,例如quay.io/yourgroup/yourimagequay.io服务器提取。

您说ubuntu不包括服务器名称吗?

如果没有服务器名称,则默认为Docker Hub,也称为docker.io。因此,ubuntudocker.io/library/ubuntu相同。

因此,您需要输入名称,以便它知道要与哪个图像注册表服务器通信。

本文链接:https://www.f2er.com/2794823.html

大家都在问