docker私有仓库搭建
为了其他主机可访问docker registry,必须采用https协议。
1 | mkdir -p ~/docker_registry/certs |
从docker hub拉取registry镜像,并启动镜像
1 | docker run -d -p 5000:5000 --restart=always --name registry \ |
停止registry镜像并删除的命令为
1 | docker stop registry && docker rm -v registry |
下载最新的centos7镜像
1 | docker pull centos:7.3.1611 |
将centos7镜像增加tag
1 | docker tag centos:7.3.1611 103-17-184-lg-201-k08.yidian.com:5000/centos:7.3 |
docker push命令仅支持https协议,签名已经启动了自签名的https协议的registry,为了能够让docker能够信任registry,需要在/etc/docker/certs.d/目录下增加相应的crt文件,增加后的目录结构为/etc/docker/certs.d/103-17-184-lg-201-k08.yidian.com:5000/103-17-184-lg-201-k08.yidian.com.crt,添加完成后需要重启docker服务。
将image push到registry
1 | docker push 103-17-184-lg-201-k08.yidian.com:5000/centos:7.3 |
api
- 列出images:https://10.103.17.184:5000/v2/_catalog
- 列出image的tags:https://10.103.17.184:5000/v2/centos/tags/list
可以直接通过curl命令来访问api:curl --cacert 103-17-184-lg-201-k08.yidian.com.crt -v https://103-17-184-lg-201-k08.yidian.com:5000/v2