由于国内访问国际网络缓慢,从DockerHub下载镜像的速度感人,所以我们有必要在本地或者自己的云服务器上搭建一套镜像仓库,提高容器下载速度
使用私有仓库需修改地址:
Centos 7 Docker配置:
编辑 /etc/sysconfig/docker
# INSECURE_REGISTRY='--insecure-registry'
增加下面一行:
地址填写域名或ip
INSECURE_REGISTRY='--insecure-registry = docker.test.com:5000'
Ubuntu Docker 配置:
echo '{ "insecure-registries":["docker.test.com:5000"] }' > /etc/docker/daemon.json
重启Docker
systemctl restart docker
安装 docker-registry
docker run -d -p 5000:5000 -v /opt/registry:/tmp/registry registry
指定本地目录 /opt/registry 为容器存放地址,默认为 /tmp/registry
访问http://127.0.0.1:5000/v2/ 得到返回 “{}” 即为正确安装
将本地镜像 pull 到私有仓库中
docker images
修改镜像
docker tag docker.io/centos:latest localhost:5000/centos:1.0.0
上传
docker pull localhost:5000/centos:1.0.0
新版的 docker-registry 需要 https 协议,添加INSECURE_REGISTRY即可实现下载
查看本地仓库的镜像列表
curl http://127.0.0.1:5000/v2/_catalog
curl http://127.0.0.1:5000/v2/centos/tags/list