随笔 - 1357  文章 - 0  评论 - 1104  阅读 - 1941万

创建Docker私有仓库

1.有时候,在公司内部为了提高分享的速度,需要在公司内部自己搭建一个本地的仓库,供私人使用。

2.docker官方提供了一个工具docker-registry,我们可以借助这个工具构建私有镜像仓库
a.首先,使用docker search命令查找

b.docker pull registry

通过docker images查看,可以看到registry镜像

c.运行registry:docker run -d -p 5000:5000 -v /root/docker/registry:/tmp/registry registry

默认情况下,仓库会创建在容器中的/tmp/registry目录下,通过 -v 指定将镜像文件存放在本地的目录中。
通过ps -ef|grep 5000可以发现5000端口已被监听

d.搭建好了私有仓库之后,就可以上传、下载、搜索镜像了
查看本机ip:ifconfig ##获取ip为192.168.1.160

查看本地已有的镜像:docker images

将my/centos标记为 192.168.1.160:5000/centos;使用命令:docker tag 90a93df7436d 192.168.1.160:5000/centos

90a93df7436d为my/centos镜像ID;192.168.1.160:5000为本地私有仓库地址和端口

使用docker push上传标记的镜像到本地私有仓库:docker push 192.168.1.160:5000/centos

第一次执行"docker push 192.168.1.160:5000/centos"可能报如下异常:
The push refers to a repository [192.168.1.160:5000/centos]
Get https://192.168.1.160:5000/v1/_ping: http: server gave HTTP response to HTTPS client
解决方案:在/etc/docker目录下新建 daemon.json, 文件中写入:{ "insecure-registries":["192.168.1.160:5000"] }
然后重启docker:systemctl restart docker
重新运行registry:docker run -d -p 5000:5000 -v /root/docker/registry:/tmp/registry registry
再次运行"docker push 192.168.1.160:5000/centos"上传镜像到私有仓库。


接下来,我们可以到另一台机器192.168.1.60下载160上传的192.168.1.160:5000/centos镜像:docker pull 192.168.1.160:5000/centos

 

查看Registry中所有镜像信息
$ curl http://192.168.1.160:5000/v2/_catalog
{"repositories":["aa","mysql"]}
下载镜像
$ docker pull 192.168.1.160:5000/aa
$ docker pull 192.168.1.160:5000/mysql

 

posted on   Ruthless  阅读(2970)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
历史上的今天:
2014-03-21 virtualbox中ubuntu和windows共享文件夹设置
2013-03-21 Centos系统常见问题
2011-03-21 struts2之多个文件上传
2011-03-21 struts2之单个文件上传
2011-03-21 异常总结
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示