Docker本地私有仓库的建立
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Docker本地私有仓库的建立相关的知识,希望对你有一定的参考价值。
环境:
192.168.139.26 docker的客户端
192.168.139.52 docker的服务器端(仓库所在位置)
首先在192.168.139.52上下载registry镜像
[email protected]:~$ sudo docker pull registry
下面操作在192.168.139.52完成
默认情况下会将仓库存放于容器内的/tmp/registry目录下,这样如果容器被删除,则存放于容器中的镜像也会丢失,所以我们一般情况下会指定本地一个目录挂载到容器内的/tmp/registry下,并用registry镜像创建创建并启动一个容器,如下:
[email protected]:~$ sudo docker run -d -p 5000:5000 -v /opt/data/registry:/tmp/registry registry
6bd275a34ad9130aeb146d8761f6002a512df48308e6836655abea0754322e0a
下面操作在192.168.139.26完成
[email protected]:~$ 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
[email protected]:~$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
my-ubuntu latest 14f60031763d 11 days ago 120MB
[email protected]:~$ sudo docker tag my-ubuntu:latest 192.168.139.52:5000/u_bantu
[email protected]:~$ 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
[email protected]:~$ 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
将两个镜像全部删除
[email protected]:~$ sudo docker rmi my-ubuntu
[email protected]:~$ sudo docker rmi 14f60031763d
从192.169.139.52服务器(本地私有仓库上重新下载)
[email protected]:~$ 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服务器(本地私有仓库)下载成功
[email protected]:~$ 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 镜像
[email protected]:~$ sudo docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
registry latest 751f286bc25e 11 days ago 33.2MB
直接从192.169.139.52服务器(本机)下载
[email protected]:~$ 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
可以看到下载成功
[email protected]:~$ 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本地私有仓库的建立的主要内容,如果未能解决你的问题,请参考以下文章