kubernetes学习笔记(三),私有仓库搭建

docker pull docker.io/registry 
启动registry
docker run -d -p 5000:5000 --name=registry --restart=always --privileged=true  --log-driver=none -v /home/data/registrydata:/tmp/registry registry

更名并推送

 docker tag docker.io/nginx:latest registry:5000/nginx:latest

docker push registry:5000/nginx:latest

dial tcp: lookup registry on 114.114.114.114:53: no such host

 

推送失败无法找到registry,需要配置dns(以后补充),这里使用ip地址

docker tag docker.io/nginx:latest 192.168.50.131:5000/nginx:latest

再次推送

docker push 192.168.50.131:5000/nginx:latest

docker push 192.168.50.131:5000/nginx:latest
The push refers to a repository [192.168.50.131:5000/nginx]
Get https://192.168.50.131:5000/v1/_ping: http: server gave HTTP response to HTTPS client
这个问题可能是由于客户端采用https,docker registry未采用https服务所致。一种处理方式是把客户对地址“192.168.1.100:5000”请求改为http。

 解决办法:修改/etc/docker/daemon.json,添加,如果node需要使用此仓库,需要咋每个node上添加

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

重启dokcer服务,systemctl restart docker.service,重启docker后需要手动启动以前的容器

此时推送成功,通过在node上docker pull 192.168.50.131:5000/nginx:latest,确认是否拉取成功

镜像文件保存在master目录/home/data/registrydata,对应register容器/tmp/registry目录。

但是默认容器镜像保存位置为/var/lib/docker,需要设置为/tmp/registry

 

使用docker inspect registry查看,具体目录信息

 

 

 


posted @ 2018-03-18 23:02  stromliu  阅读(1736)  评论(0编辑  收藏  举报