首页 > 代码库 > Docker本地私有仓库的建立

Docker本地私有仓库的建立

环境:

192.168.139.26 docker的客户端

192.168.139.52 docker的服务器端(仓库所在位置)


首先在192.168.139.52上下载registry镜像

zxl@zxl-ubuntu:~$ sudo docker pull registry


下面操作在192.168.139.52完成


默认情况下会将仓库存放于容器内的/tmp/registry目录下,这样如果容器被删除,则存放于容器中的镜像也会丢失,所以我们一般情况下会指定本地一个目录挂载到容器内的/tmp/registry下,并用registry镜像创建创建并启动一个容器,如下:

zxl@zxl-ubuntu:~$ sudo docker run -d -p 5000:5000 -v /opt/data/registry:/tmp/registry registry

6bd275a34ad9130aeb146d8761f6002a512df48308e6836655abea0754322e0a


下面操作在192.168.139.26完成

zxl@zxl-ubuntu:~$ sudo docker ps #查看本机当前运行的容器,只有registry容器

CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMES

6bd275a34ad9        registry            "/entrypoint.sh /e..."   22 seconds ago      Up 19 seconds       0.0.0.0:5000->5000/tcp   distracted_almeida


zxl@Ubuntu:~$ docker images

REPOSITORY                                TAG                 IMAGE ID            CREATED             SIZE

my-ubuntu                                 latest              14f60031763d        11 days ago         120MB


zxl@Ubuntu:~$ sudo docker tag my-ubuntu:latest 192.168.139.52:5000/u_bantu


zxl@Ubuntu:~$ docker images

REPOSITORY                                TAG                 IMAGE ID            CREATED             SIZE

192.168.139.52:5000/u_bantu               latest              14f60031763d        11 days ago         120MB

my-ubuntu                                 latest              14f60031763d        11 days ago         120MB


zxl@Ubuntu:~$ sudo docker  push 192.168.139.52:5000/u_bantu

The push refers to a repository [192.168.139.52:5000/u_bantu]

26b126eb8632: Pushed 

220d34b5f6c9: Pushed 

8a5132998025: Pushed 

aca233ed29c3: Pushed 

e5d2f035d7a4: Pushed 

latest: digest: sha256:84c334414e2bfdcae99509a6add166bbb4fa4041dc3fa6af08046a66fed3005f size: 1357

将两个镜像全部删除

zxl@Ubuntu:~$ sudo docker rmi my-ubuntu

zxl@Ubuntu:~$ sudo docker rmi  14f60031763d

从192.169.139.52服务器(本地私有仓库上重新下载)

zxl@Ubuntu:~$ docker pull 192.168.139.52:5000/u_bantu

Using default tag: latest

latest: Pulling from u_bantu

e0a742c2abfd: Pull complete 

486cb8339a27: Pull complete 

dc6f0d824617: Pull complete 

4f7a5649a30e: Pull complete 

672363445ad2: Pull complete 

Digest: sha256:84c334414e2bfdcae99509a6add166bbb4fa4041dc3fa6af08046a66fed3005f

Status: Downloaded newer image for 192.168.139.52:5000/u_bantu:latest

可以看到直接从192.169.139.52服务器(本地私有仓库)下载成功

zxl@Ubuntu:~$ docker images

REPOSITORY                    TAG                 IMAGE ID            CREATED             SIZE

192.168.139.52:5000/u_bantu   latest              14f60031763d        11 days ago         120MB


下面操作在192.169.139.52完成

在192.169.139.52上可以看到没有192.168.139.52:5000/u_bantu 镜像

zxl@zxl-ubuntu:~$ sudo docker images

REPOSITORY                    TAG                 IMAGE ID            CREATED             SIZE

registry                      latest              751f286bc25e        11 days ago         33.2MB

直接从192.169.139.52服务器(本机)下载

zxl@zxl-ubuntu:~$ sudo docker pull 192.168.139.52:5000/u_bantu

Using default tag: latest

latest: Pulling from u_bantu

e0a742c2abfd: Pull complete 

486cb8339a27: Pull complete 

dc6f0d824617: Pull complete 

4f7a5649a30e: Pull complete 

672363445ad2: Pull complete 

Digest: sha256:84c334414e2bfdcae99509a6add166bbb4fa4041dc3fa6af08046a66fed3005f

Status: Downloaded newer image for 192.168.139.52:5000/u_bantu:latest

可以看到下载成功

zxl@zxl-ubuntu:~$ sudo docker images

REPOSITORY                    TAG                 IMAGE ID            CREATED             SIZE

registry                      latest              751f286bc25e        11 days ago         33.2MB

192.168.139.52:5000/u_bantu   latest              14f60031763d        11 days ago         120MB


这样在192.168.139.52服务器上创建本地私有仓库成功,只要可以访问192.168.139.52:5000端口的主机都可以直接在此仓库下载此仓库已经有的镜像

本文出自 “11097124” 博客,请务必保留此出处http://11107124.blog.51cto.com/11097124/1952806

Docker本地私有仓库的建立