Docker 仓库

2020-01-25  本文已影响0人  _于曼丽_

介绍

Docker 仓库中存储着各种 Docker 镜像,我们可以从仓库中下载镜像到本地,也可以从本地上传镜像到仓库。常见仓库:

下载镜像:

  1. 登录仓库
  2. 搜索镜像
  3. docker pull 下载镜像

上传镜像:

  1. 登录仓库
  2. 创建 Docker Repository
  3. docker login 登录 Docker Registry
  4. docker tag 重命名本地镜像
  5. docker push 上传镜像

Docker Hub

创建仓库

登录 Docker Hub,点击 Create a Repository 按钮创建仓库。

你的 Docker Hub 账号名称会作为你创建的仓库的命名空间,在同一个命名空间下,仓库不能重名。

如下图所示,我有三个仓库,三个仓库都处于 yumanli 命名空间下。

上传镜像

登录 Docker Hub Registry,用于登录的用户名为 Docker Hub 账号全名,密码为 Docker Hub 账号密码。

docker login

在将本地镜像上传到 Docker Hub 之前,你必须首先使用你的 Docker Hub 账号名称和你在 Docker Hub 上创建的仓库名称为本地镜像命名。Docker Hub 账号、仓库和镜像之间的关系如下:

你可以使用以下方法来为本地镜像命名:

你可以上传多个镜像到同一个仓库,通过在镜像名后面添加 :tag 来区分镜像,如果没有指定 tag,则 tag 默认为 latest。

$ docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
yumanli/test        hello-world         fce289e99eb9        13 months ago       1.84kB
yumanli/test        good-morning        fce289e99eb9        13 months ago       1.84kB
$ docker push yumanli/test:hello-world
$ docker push yumanli/test:good-morning

下载镜像

你可以通过 docker search 命令搜索 Docker Hub 上的镜像。

$ docker search centos
NAME                                 DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
centos                               The official build of CentOS.                   1034      [OK]
ansible/centos7-ansible              Ansible on Centos7                              43                   [OK]
tutum/centos                         Centos image with SSH access. For the root...   13                   [OK]
...

你可以搜到 centosansible/centos7-ansible 两个结果。第一个结果 centos 没有前缀,表明该镜像来自 Docker 的官方仓库。他是第二个结果 ansible/centos7-ansible 有前缀,表明该镜像来自 ansible 用户的 centos7-ansible 仓库。

当你找到了你想要的镜像后,便可以使用 docker pull 命令下载镜像。

$ docker pull centos
latest: Pulling from centos
6941bfcbbfca: Pull complete
41459f052977: Pull complete
fd44297e2ddb: Already exists
centos:latest: The image you are pulling has been verified. Important: image verification is a tech preview feature and should not be relied on to provide security.
Digest: sha256:d601d3b928eb2954653c59e65862aabb31edefa868bd5148a41fa45004c12288
Status: Downloaded newer image for centos:latest

阿里云容器镜像服务

创建仓库

登录 阿里云容器镜像服务

创建命名空间

创建镜像仓库

选择代码源为本地仓库

上传镜像

登录阿里云 Docker Registry,用于登录的用户名为阿里云账号全名,密码为开通服务时设置的密码。可以在访问凭证页面修改凭证密码。

docker login --username=阿里云账号 registry.cn-beijing.aliyuncs.com

在将本地镜像上传到阿里云之前,你必须使用 docker tag 命令重命名镜像,新的镜像名称需要包括专有网络地址、命名空间和仓库名称。

docker tag [ImageId] registry.cn-beijing.aliyuncs.com/yumanli/test:[镜像版本号]

上传镜像

docker push registry.cn-beijing.aliyuncs.com/yumanli/test:[镜像版本号]
上一篇下一篇

猜你喜欢

热点阅读