docker 创建本地仓库详解(push/pull)

版权声明:本文为博主原创文章,欢迎转载。转载请注明出处 https://blog.csdn.net/jobbofhe/article/details/84842844

除了使用Docker Hub,还可以根据自己的需求创建似有仓库。下面就介绍在centos7 下创建似有仓库。本文内容基于 docker-registry v2.x 版本。

  1. 运行仓库镜像
    通过获取官方 registry 镜像来运行
$ docker run -d -p 5000:5000 --restart=always --name registry registry

默认创建的容器目录: /var/lib/registry .你可以通过 -v 参数来将镜像文件存放在本地的指定路径。例如下面的例子将上传的镜像放到本地的 /home/data/registry 目录。

$ docker run -d \
    -p 5000:5000 \
    -v /home/data/registry:/var/lib/registry \
    registry
  1. push/pull似有仓库
    创建好似有仓库、并运行之后。就可以将自己的镜像push 到似有仓库了。
    假设似有仓库的地址是 192.168.103.22:5000
    2.1 查看本机镜像
$ docker image ls
REPOSITORY                        TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
ubuntu                            latest              ba5877dc9bec        9 weeks ago         192.7 MB

使用 docker tag 将 ubuntu:latest 这个镜像标记为 192.168.103.22:5000/ubuntu:latest。

$ docker tag ubuntu:latest 127.0.0.1:5000/ubuntu:latest
$ docker image ls
REPOSITORY                        TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
ubuntu                            latest              ba5877dc9bec        9 weeks ago         192.7 MB
192.168.103.22:5000/ubuntu:latest      latest              ba5877dc9bec        9 weeks ago         192.7 MB

2.2 使用 docker push 上传标记的镜像

$ docker push 192.168.103.22:5000/ubuntu:latest
The push refers to repository [192.168.103.22:5000/ubuntu]
373a30c24545: Pushed
a9148f5200b0: Pushed
cdd3de0940ab: Pushed
fc56279bbb33: Pushed
b38367233d37: Pushed
2aebd096e0e2: Pushed
latest: digest: sha256:fe4277621f10b5026266932ddf760f5a756d2facd505a94d2da12f4f52f71f5a size: 1568

2.3 curl 查看仓库中的镜像

$ curl 127.0.0.1:5000/v2/_catalog
{"repositories":["ubuntu"]}

2.4 在另一台主机(假设IP:192.168.103.23)pull该镜像
首先在192.168.103.23 创建文件 /etc/docker/daemon.json
写入内容

{
  "insecure-registries": [
    "192.168.103.22:5000"
  ]
}

然后重启启动 docker

service docker restart

猜你喜欢

转载自blog.csdn.net/jobbofhe/article/details/84842844