docker私人倉庫
docker創建registry倉庫
環境聲明
centos7
docker鏡像倉庫:192.168.157.128
docker客戶端:192.168.157.129
1、128搭建本地registry
[root@localhost ~]# docker pull registry
[root@localhost ~]# docker images
2、基於私有倉庫鏡像運行容器
[root@localhost ~]# docker run -d -p 5000:5000 -v /opt/registry:/tmp/registry docker.io/registry
[root@localhost ~]# docker ps -a
[root@localhost ~]# curl 127.0.0.1:5000/v1/search
{“num_results”: 0, “query”: “”, “results”: []} #私有倉庫為空,沒有提交新鏡像到倉庫中
網上都用這個curl 127.0.0.1:5000/v1/search,但是報404 page not found,後查證是v1版本的api查看方式,我們現在的版本是v2,所以用如下方法查看:
[root@localhost ~]# curl 127.0.0.1:5000/v2/_catalog
{“repositories”:[]} #私有倉庫為空,沒有提交新鏡像到倉庫中
4、從Docker Hub上下載一個ssh鏡像
[root@localhost ~]# docker search -s 10 ssh
[root@localhost ~]# docker pull fedora/ssh
[root@localhost ~]# docker images
5、創建鏡像鏈接或為基礎鏡像打個標簽
[root@localhost ~]# docker tag docker.io/fedora/ssh 127.0.0.1:5000/ssh #庫名不能有大寫字母
[root@localhost ~]# docker images
6、修改Docker配置文件制定私有倉庫url
[root@localhost ~]# vim /etc/docker/daemon.json 添加此行 不添加報錯,https證書問題
[root@localhost ~]# service docker restart
7、提交鏡像到本地私有倉庫中
[root@localhost ~]# docker push 127.0.0.1:5000/ssh
8、查看私有倉庫是否存在對應的鏡像
[root@localhost ~]# curl 127.0.0.1:5000/v2/_catalog
從私有倉庫中下載已有的鏡像
1、登陸另外一臺Docker客戶端
[root@localhost ~]# ssh [email protected]
2、修改Docker配置文件
[root@localhost ~]# vim /etc/docker/daemon.json 不添加報錯,https證書問題
{“insecure-registries”:[“192.168.157.128:5000”]}
[root@localhost ~]# service docker restart
3、查看私有倉庫是否存在對應的鏡像
[root@localhost ~]# curl 192.168.157.128:5000/v2/_catalog
[root@localhost ~]# curl 192.168.157.128:5000/v2/ssh/tags/list
4、從私有倉庫中下載已有的鏡像
[root@localhost ~]# docker pull 127.0.0.1:5000/ssh
[root@localhost ~]# docker images 驗證是否下載成功
docker私人倉庫