Docker 公共存储库

  • Docker 公共存储库

    公共存储库可用于托管可由其他人使用的Docker镜像。一个例子是Docker Hub中可用的镜像。大多数镜像,如Centos,Ubuntu和Jenkins都是公开的。我们还可以通过将其发布到Docker Hub上的公共存储库来使我们的镜像可以在任何地方可用。对于我们的示例,我们将使用“Docker 构建”一章中构建的myimage存储库,并将该镜像上载到Docker Hub。让我们首先回顾一下Docker主机上的镜像,看看我们可以推送到Docker Hub的镜像列表。
    sudo docker images
    docker build
    在这里,我们有myimage:0.1镜像,它是作为“docker 构建”章节的一部分创建的。让我们使用它来上传到Docker公共存储库。以下步骤说明了如何将图像上载到公共存储库。
    步骤一:登录Docker Hub并创建存储库。这是存储镜像的存储库。转到https://hub.docker.com/并使用您的账号密码登录。
    docker build
    步骤二 : 单击上面屏幕上的“Create Repository”按钮,创建一个名为demorep的存储库。确保存储库的可见性是公开(public)的。
    docker build
    创建存储库后,请记下附加到存储库的pull命令。
    docker build
    步骤三:现在回到Docker主机。在这里,我们需要将myimage标记为在Docker Hub中创建的新存储库。我们可以通过docker tag命令完成此操作。我们将在本章后面了解有关tag命令的更多信息。
    步骤四:运行docker login命令从命令提示符登录Docker Hub存储库。Docker登录命令将提示您输入Docker Hub存储库的用户名和密码。
    docker build
    步骤五:镜像被标记(tag)后,现在是时候将镜像推送到Docker Hub存储库了。我们可以通过docker push命令完成此操作。我们将在本章后面详细了解该命令。
  • docker tag

    此方法允许用户将图像标记到相关的存储库。
    语法:
    docker tag imageID Repositoryname
    选项:
    • imageID - 这是需要标记到存储库的ImageID。
    • Repositoryname - 这是ImageID需要标记到的存储库名称。
    例子:
    sudo docker tag 3e6376d3f21c momo1a/demorep:1.0
    docker build
    这里我们把myimage这个镜像进行标记到demorep这个库
  • docker push

    此方法允许将图像推送到Docker Hub。
    语法:
    docker push Repositoryname
    选项:
    • Repositoryname - 这是需要推送到Docker Hub的存储库名称。
    例子:
    sudo docker push momo1a/demorep:1.0
    docker build
    如果您返回Docker Hub页面并转到存储库,您将在存储库中看到标记名称。
    docker build
    现在让我们尝试将我们上传的存储库拉到我们的Docker主机上(这里我们用另外一台Windows主机拉pull)。 让我们使用docker pull命令从Docker Hub中提取存储库。
    docker pull momo1a/demorep:1.0
    docker build
    由上图我们知道,我们刚刚在CentOS主机推送到仓库的镜像,现在被我们在Windows主机拉取下来了。