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