1、拉取registry镜像
docker pull registry
2、创建并启动registry容器
docker run -d -p 5000:5000 -v /mydata/docker/registry/:/tmp/registry --privileged=true registry
3、基于容器生成一个新镜像
公式:docker commit -m="提交的描述信息" -a="作者" 容器ID 要创建的目标镜像名:版本号
docker commit -m"add vim" -a="shendian" 2623a1551689 shendian/ubuntu:1.0
4、将本地镜像改为符合私有仓库的规范
公式:docker tag 镜像名:版本号 宿主机IP:端口号/镜像名:版本号(端口号为registry容器映射给宿主机的那个端口)
docker tag shendian/ubuntu:1.0 192.168.56.104:5000/shendian/ubuntu:1.0
5、查看下此时存在的镜像及运行中的容器

6、查看下当前私有仓库有哪些镜像可使用
curl -XGET http://192.168.56.104:5000/v2/_catalog
此处遇到一坑:总是报找不到主机路由
原因:linux内核和docker有冲突
解决:yum update -y

7、修改配置文件vim /etc/docker/daemon.json
docker 默认只支持https推送镜像到私有仓库
增加配置,使docker支持http推送镜像:
"insecure-registries": ["192.168.56.104:5000"]

8、重启docker
systemctl restart docker
重启docker后,记得把registry容器启动
9、推送本地镜像
docker push 192.168.56.104:5000/shendian/ubuntu:1.0

10、再次查看私有仓库有什么镜像

11、便于查看,把不需要镜像删除了,查看此时镜像 及 运行中容器

12、从docker私有仓库拉取镜像
docker pull 192.168.56.104:5000/shendian/ubuntu:1.0

13、创建并启动容器

【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义