搭建本地私有Docker仓库


1. 使用registry镜像创建私有仓库

安装docker后,可以通过官方提供的registry镜像来简单搭建一套本地私有仓库

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

默认情况下,会将仓库创建在容器的/var/lib/registry目录下。

2. 如何使用Registry

push镜像到仓库时经常会发生一个错误

Get https://registry:5000/v2/: http: server gave HTTP response to HTTPS client

这是由于Registry为了安全性考虑,默认是需要https证书支持的。这个问题可能是由于客户端采用https,docker registry未采用https服务所致。

在”/etc/docker/“目录下,创建”daemon.json“文件。在文件中写入:

#vi /etc/docker/daemon.json
{
    "insecure-registries": ["<ip>:5000"] 
}
#systemctl daemon-reload 
#systemctl restart docker

注:<ip>:Registry的机器ip地址,在安装registry的节点和客户端需要访问私有Registry的节点都需要执行此步操作。

上传镜像到Registry

docker push <ip>:5000/nginx1.8:latest

查看Registry中所有镜像信息

curl http://<ip>:5000/v2/_catalog
返回:
{"repositories":["centos6.8","jenkins1.638","nginx","redis3.0","source2.0.3","zkdubbo"]}

其他Docker服务器下载镜像

docker pull <ip>:5000/nginx1.8:latest

启动镜像

docker run -it <ip>:5000/nginx1.8:latest /bin/bash

声明:初心|版权所有,违者必究|如未注明,均为原创|本网站采用BY-NC-SA协议进行授权

转载:转载请注明原文链接 - 搭建本地私有Docker仓库


愿你勿忘初心,并从始至终