Docker – 公共存储库
Docker – 公共存储库
公共存储库可用于托管可供其他所有人使用的 Docker 镜像。一个例子是 Docker Hub 中可用的图像。大多数镜像,如 Centos、Ubuntu 和 Jenkins,都对所有人公开。我们还可以通过将图像发布到 Docker Hub 上的公共存储库来使图像可用。
对于我们的示例,我们将使用在“构建 Docker 文件”一章中构建的myimage存储库并将该图像上传到 Docker Hub。让我们首先查看 Docker 主机上的镜像,看看我们可以推送到 Docker 注册表中的内容。
在这里,我们有myimage:0.1镜像,它是作为“构建 Docker 文件”一章的一部分创建的。让我们使用它上传到 Docker 公共存储库。
以下步骤说明了如何将图像上传到公共存储库。
步骤 1 – 登录 Docker Hub 并创建您的存储库。这是存储图像的存储库。转到https://hub.docker.com/并使用您的凭据登录。
步骤 2 – 单击上面屏幕上的“创建存储库”按钮并创建一个名为demorep的存储库。确保存储库的可见性是公开的。
创建存储库后,记下附加到存储库的pull命令。
将在我们的存储库中使用的pull命令如下 –
docker pull demousr/demorep
第 3 步– 现在回到 Docker 主机。在这里,我们需要将myimage标记到在 Docker Hub 中创建的新存储库。我们可以通过 Docker tag 命令来做到这一点。
我们将在本章稍后部分了解有关此标记命令的更多信息。
步骤 4 – 发出 Docker login 命令以从命令提示符登录到 Docker Hub 存储库。Docker 登录命令将提示您输入 Docker Hub 存储库的用户名和密码。
第 5 步– 一旦图像被标记,现在是时候将图像推送到 Docker Hub 存储库。我们可以通过 Docker push命令来做到这一点。我们将在本章稍后部分了解有关此命令的更多信息。
码头工人标签
此方法允许将图像标记到相关存储库。
句法
docker tag imageID Repositoryname
选项
-
imageID – 这是需要标记到存储库的 ImageID。
-
Repositoryname – 这是需要标记 ImageID 的存储库名称。
返回值
没有任何
例子
sudo docker tag ab0c1d3744dd demousr/demorep:1.0
输出
下面给出了上述示例的示例输出。
码头推
这种方法允许将图像推送到 Docker Hub。
句法
docker push Repositoryname
选项
-
Repositoryname – 这是需要推送到 Docker Hub 的存储库名称。
返回值
推送到 Docker Hub 的存储库的长 ID。
例子
sudo docker push demousr/demorep:1.0
输出
如果您返回 Docker Hub 页面并转到您的存储库,您将在存储库中看到标签名称。
现在让我们尝试将我们上传的存储库拉到我们的 Docker 主机上。让我们首先从本地 Docker 主机中删除镜像myimage:0.1和demousr/demorep:1.0。让我们使用 Docker pull 命令从 Docker Hub 拉取存储库。
从上面的截图中,您可以看到 Docker pull命令已经从 Docker Hub 中获取了我们的新存储库并将其放置在我们的机器上。