官方地址:https://hub.docker.com/_/registry/tags
一、拉取registry私有仓库镜像
docker pull registry:latest
二、运⾏容器
docker run -itd -v /home/dockerdata/registry:/var/lib/registry --name "pri_registry1" --restart=always -p 5000:5000 registry:latest /bin/sh
参数解释:
/home/dockerdata/registry表示为宿主机的⽬录,如果不存在⾃动创建
-v映射⽬录: 宿主机的⽬录:容器⽬录
把宿主机的⽬录挂载到容器中,将数据⽬录挂载出来就是为了防⽌docker私有仓库这个容器被删除的
时候,仓库⾥⾯的镜像也被删除。
-p 端⼝映射:本地端⼝:容器端⼝
三、连接容器查看端⼝状态
docker exec -it 269d69d8ce70 /bin/sh
1、在本机查看能否访问该私有仓库, 看看状态码是不是200
curl -I http://127.0.0.1:5000
2、为了测试,下载1个镜像,httpd
docker pull httpd
3、上传前必须给镜像打tag 注明ip和端⼝
docker tag httpd:latest 192.168.199.102:5000/httpd
注:tag后⾯可以使⽤镜像名称也可以使⽤id,我这⾥使⽤的镜像名称,如果使⽤官⽅的镜像,不需要加前缀
4、修改请求⽅式为http
vim /etc/docker/daemon.json #不存在则创建
{ "insecure-registries":["192.168.199.102:5000"] }
注释:第⼀⾏是Docker镜像加速器。后⾯⼀定要跟逗号;第⼆⾏是仓库地址
5、重启dokcer
systemctl restart docker
6、上传镜像到私有仓库
docker push 192.168.199.102:5000/httpd:latest
7、这条命令会查看仓库下⾯所有的镜像
语法: # curl http://ip:port/v2/repo名字/tags/list
curl http://192.168.199.102:5000/v2/_catalog
curl http://192.168.199.102:5000/v2/httpd/tags/list
四、部署docker web ui应用
1、下载并运⾏容器
docker pull uifd/ui-for-docker
docker run -itd --name docker-web -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock uifd/ui-for-docker:latest
2、浏览器访问测试:http://192.168.199.102:9000/
3、容器的停止删除等操作
4、镜像的推送与拉取