docker本地搭建私有registry仓库

docker hub虽然提供得有公有仓库,但是有一些限制,一是网络连接慢;二是上传docker hub的镜像所有人都可以访问,虽然可以私有化仓库但是不是免费的;三是没那么安全。所以我们可以通过registry在本地建一个镜像仓库,docker已经将registry开源了,下面开始创建本地镜像仓库。

1、准备环境——需要两台装有docker的虚拟机

服务端 docker1:docker私有仓库服务器,运行registry容器;
测试端 docker2:普通的docker服务器,在这台服务器上下载镜像并上传仓库

2、配置服务端docker1

docker pull registry

docker本地搭建私有registry仓库 

docker本地搭建私有registry仓库 

docker run -itd -v /data/registry:/var/lib/registry -p 5000:5000 --restart=always --name registry registry:latest

docker本地搭建私有registry仓库

运行registry容器

curl http://127.0.0.1:5000/v2/_catalog

docker本地搭建私有registry仓库

可以看到仓库中还没有镜像,现在我们开始进行测试端的配置

3、配置测试端docker2

下载镜像 docker pull busybox

docker本地搭建私有registry仓库

修改镜像源

vim /etc/docker/daemon.json

docker本地搭建私有registry仓库

修改为自己的registry安装的容器,也就是服务端docker1的地址

docker本地搭建私有registry仓库

 

{"registry-mirrors": ["http://registry.docker-cn.com"],

"insecure-registries": [ "192.168.32.131:5000"]}

重启docker服务

systemctl restart docker

为镜像打标签

docker tag busybox:latest 172.18.18.90:5000/busybox:v1

docker本地搭建私有registry仓库

上传镜像

docker push 172.18.18.90:5000/busybox:v1

我们查看服务端docker1

docker本地搭建私有registry仓库

 

现在就上传成功了,我们可以再试一下拉取,删除docker2上的镜像,从docker1 pull下来

删除 docker rmi -f $(docker images -aq)

拉取 docker pull 192.168.32.131:5000/busybox:v1

docker本地搭建私有registry仓库

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章