Docker 简明教程
Docker - Private Registries
你可能需要拥有自己的私有存储库。你可能不想在 Docker Hub 上托管存储库。为此,Docker 本身提供了一个存储库容器。让我们看看如何下载并使用存储库容器。
Step 1 - 使用 Docker run 命令下载私有存储库。可以使用以下命令执行此操作。
sudo docker run –d –p 5000:5000 –-name registry registry:2
需要对上述命令注意以下几点 −
-
Registry 是由 Docker 管理的容器,可用于托管私有存储库。
-
容器公开的端口号是 5000。因此,使用 –p command ,我们将相同的端口号映射到本地主机上的 5000 端口号。
-
我们只是将存储库容器标记为“2”,以便在 Docker 主机上对其进行区分。
-
–d 选项用于以分离模式运行容器。这样做是为了让容器在后台运行
Step 2 - 让我们做 docker ps ,看看存储库容器是否确实在运行。
我们现在已经确认存储库容器确实在运行。
Step 3 - 现在,让我们标记我们现有的一个镜像,以便我们可以将其推送到我们的本地存储库。在我们的示例中,由于我们在本地有 centos 镜像可用,我们将把它标记到我们的私有存储库并添加一个 centos 的标签名。
sudo docker tag 67591570dd29 localhost:5000/centos
需要对上述命令注意以下几点 −
-
67591570dd29 指的是 centos 镜像的镜像 ID。
-
localhost:5000 是我们私有存储库的位置。
-
我们在私有存储库中将存储库名称标记为 centos 。
Step 4 - 现在我们使用 Docker push 命令将存储库推送到我们的私有存储库。
sudo docker push localhost:5000/centos
在这里,我们正在将 centos 镜像推送到托管在 localhost:5000 的私有存储库中。
Step 5 − 现在让我们使用 docker rmi 命令,删除我们为 centos 提供的本地图片。然后我们可以从我们的私有存储中下载所需的 centos 图片。
sudo docker rmi centos:latest
sudo docker rmi 67591570dd29
Step 6 − 现在我们在本地计算机上没有任何 centos 图片,我们可以使用如下 Docker pull 命令从我们的私有存储中拉取 centos 图片。
sudo docker pull localhost:5000/centos
在此,我们正在将 centos 图片拉取到 localhost:5000 托管的私有存储中。
如果您现在查看系统上的图片,您还将看到 centos 图片。