教你分分钟搞定Docker私有仓库Registry
一、什么是Docker私有仓库Registry
官方的Docker hub是一个用于管理公共镜像的好地方,我们可以在上面找到我们想要的镜像,也可以把我们自己的镜像推送上去。但是,有时候我们的服务器无法访问互联网,或者你不希望将自己的镜像放到公网当中,那么你就需要Docker Registry,它可以用来存储和管理自己的镜像。
二、安装Docker及Registry
安装Docker见之前博文:
http://www.cnblogs.com/Javame/p/5492543.html
安装Registry:
很简单,只需要运行一个Registry容器即可(包括下载镜像和启动容器、服务)
docker run -d -p 5000:5000 -v /data/registry:/var/lib/registry --name registry --restart=always registry
三、如何使用Registry
我也看过其他博文,经常报的一个错误就是:
unable to ping registry endpoint https://172.18.3.22:5000/v0/ v2 ping attempt failed with error: Get https://172.18.3.22:5000/v2/: http: server gave HTTP response to HTTPS client
这是由于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的节点都需要执行此步操作。
四、通过 docker tag重命名镜像,使之与registry匹配
docker tag inits/nginx1.8 <ip>:5000/nginx1.8:latest
五、上传镜像到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
加微信:wonter 发送:技术Q
医疗微信群:
加微信:wonter 发送:医疗Q
更多文章关注公众号:

【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】