kubernetes Spring Cloud 微服务架构—(8)Kubernetes spring cloud 微服务-Registry 私有镜像仓库

简介: 第 8 章 Registry 私有镜像仓库 本章节讲解私有仓库的工作流程, 主要是了解Docker怎么获取镜像的过程,怎样搭建属于自己的私有仓库,客户端怎样推送镜像到私有仓库,以及私有仓库的管理方法。 学过之前的章节应该会明白,容器运行是需要启动镜像,那么有了镜像,就需要有仓库存放,提供给客户端下载使用, 所以这个就是私有仓库的由来。 前面的章节已经讲了镜像的拉取流程, 以及镜像的存储机制。这节主要讲私有仓库Registry 的搭建。而在实际的生产过程中会使用到Harbor, 在Spring Cloud 与 Kubernetes 课程中会详细的讲解搭建与部署规划。 本章节的

8.0 私有镜像仓库简介

Docker Registry:官方docker镜像存储、管理和分发工具。

 

部署私有仓库可以解决以下问题:

1)   下载镜像时所带来的网络延时。

2)   方便镜像版本的更新与维护

3)部署私有应用程序


8.1 私有镜像仓库工作流程

1)用户本地构建镜像,将镜像推送到Registry仓库.

2) Docker 用户使用的时候,直接从Registry 下载, 无须从Docker Hub 下载.

8.2 搭建私有仓库

官方提供的私有仓库镜像,无需调整,直接使用。将宿主机目录挂载到容器中,提供数据持久化。镜像名称:registry,默认使用       新版。 
#挂载宿主机/opt/myregistry目录到容器目录/var/lib/registry
[root@docker01 ~]# docker run -d -p 5000:5000 --restart=always --name registry -v /opt/myregistry:/var/lib/registry registry

/

8.3 上传本地镜像至私有仓库

#给镜像打tag 标签,要写全镜像仓库地址。 
[root@master mnt]# docker image tag centos:latest 192.168.91.8:5000/centos7:v1.0 
#上传镜像到私有仓库 
[root@master mnt]# docker push 192.168.91.8:5000/centos7:v1.0 
注:报错 
The push refers to repository [192.168.91.8:5000/centos7] 
Get https://192.168.91.8:5000/v2/: http: server gave HTTP response to HTTPS client 
出现https 错误解决方法有两种: 
1) 修改Docker 节点配置文件 (本案例中) 
2) 添加Nginx 反向代理 
解决办法:修改配置文件,建立信任 
[root@docker01 ~]#  vi /etc/docker/daemon.json 
{ 
"insecure-registries": ["192.168.91.8:5000"] 
} 
#重启docker 服务 
[root@docker01 ~]# systemctl restart docker 
#再次推送镜像 
[root@master mnt]# docker push 192.168.91.8:5000/centos7:v1.0 
The push refers to repository [192.168.91.8:5000/centos7] 
0683de282177: Pushing [========>                       ]   38.8MB/237.1MB


/

8.4 查看私有仓库镜像列表

[root@master mnt]# curl http://192.168.91.8:5000/v2/_catalog

{"repositories":["centos7"]}

8.5 删除私有仓库中镜像


/

1)进入docker registry 的容器中 
[root@docker01 ~]# docker exec -it registry /bin/sh 
2)     删除指定镜像目录文件 
/ # rm -fr /var/lib/registry/docker/registry/v2/repositories/centos7 
3)     清理掉blob 
/ # registry garbage-collect /etc/docker/registry/config.yml 
4)     再次查看版本库 
[root@master mnt]#  curl http://192.168.91.8:5000/v2/_catalog 
{"repositories":[]}


 

相关实践学习
Docker镜像管理快速入门
本教程将介绍如何使用Docker构建镜像,并通过阿里云镜像服务分发到ECS服务器,运行该镜像。
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。     相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
10月前
|
弹性计算 关系型数据库 微服务
基于 Docker 与 Kubernetes(K3s)的微服务:阿里云生产环境扩容实践
在微服务架构中,如何实现“稳定扩容”与“成本可控”是企业面临的核心挑战。本文结合 Python FastAPI 微服务实战,详解如何基于阿里云基础设施,利用 Docker 封装服务、K3s 实现容器编排,构建生产级微服务架构。内容涵盖容器构建、集群部署、自动扩缩容、可观测性等关键环节,适配阿里云资源特性与服务生态,助力企业打造低成本、高可靠、易扩展的微服务解决方案。
2499 10
|
10月前
|
数据可视化 Java BI
将 Spring 微服务与 BI 工具集成:最佳实践
本文探讨了 Spring 微服务与商业智能(BI)工具集成的潜力与实践。随着微服务架构和数据分析需求的增长,Spring Boot 和 Spring Cloud 提供了构建可扩展、弹性服务的框架,而 BI 工具则增强了数据可视化与实时分析能力。文章介绍了 Spring 微服务的核心概念、BI 工具在企业中的作用,并深入分析了两者集成带来的优势,如实时数据处理、个性化报告、数据聚合与安全保障。同时,文中还总结了集成过程中的最佳实践,包括事件驱动架构、集中配置管理、数据安全控制、模块化设计与持续优化策略,旨在帮助企业构建高效、智能的数据驱动系统。
466 1
将 Spring 微服务与 BI 工具集成:最佳实践
|
10月前
|
监控 Kubernetes Java
使用 New Relic APM 和 Kubernetes Metrics 监控 EKS 上的 Java 微服务
在阿里云AKS上运行Java微服务常遇性能瓶颈与OOMKilled等问题。本文教你通过New Relic实现集群与JVM双层监控,集成Helm部署、JVM代理注入、GC调优及告警仪表盘,打通从节点资源到应用内存的全链路观测,提升排障效率,保障服务稳定。
673 115
|
9月前
|
监控 Cloud Native Java
Spring Boot 3.x 微服务架构实战指南
🌟蒋星熠Jaxonic,技术宇宙中的星际旅人。深耕Spring Boot 3.x与微服务架构,探索云原生、性能优化与高可用系统设计。以代码为笔,在二进制星河中谱写极客诗篇。关注我,共赴技术星辰大海!(238字)
1391 2
Spring Boot 3.x 微服务架构实战指南
|
9月前
|
负载均衡 Java API
《深入理解Spring》Spring Cloud 构建分布式系统的微服务全家桶
Spring Cloud为微服务架构提供一站式解决方案,涵盖服务注册、配置管理、负载均衡、熔断限流等核心功能,助力开发者构建高可用、易扩展的分布式系统,并持续向云原生演进。
|
10月前
|
监控 安全 Java
Spring Cloud 微服务治理技术详解与实践指南
本文档全面介绍 Spring Cloud 微服务治理框架的核心组件、架构设计和实践应用。作为 Spring 生态系统中构建分布式系统的标准工具箱,Spring Cloud 提供了一套完整的微服务解决方案,涵盖服务发现、配置管理、负载均衡、熔断器等关键功能。本文将深入探讨其核心组件的工作原理、集成方式以及在实际项目中的最佳实践,帮助开发者构建高可用、可扩展的分布式系统。
601 1
|
9月前
|
人工智能 算法 调度
阿里云ACK托管集群Pro版共享GPU调度操作指南
本文介绍在阿里云ACK托管集群Pro版中,如何通过共享GPU调度实现显存与算力的精细化分配,涵盖前提条件、使用限制、节点池配置及任务部署全流程,提升GPU资源利用率,适用于AI训练与推理场景。
724 1
|
9月前
|
弹性计算 监控 调度
ACK One 注册集群云端节点池升级:IDC 集群一键接入云端 GPU 算力,接入效率提升 80%
ACK One注册集群节点池实现“一键接入”,免去手动编写脚本与GPU驱动安装,支持自动扩缩容与多场景调度,大幅提升K8s集群管理效率。
520 89
|
资源调度 Kubernetes 调度
从单集群到多集群的快速无损转型:ACK One 多集群应用分发
本文介绍如何利用阿里云的分布式云容器平台ACK One的多集群应用分发功能,结合云效CD能力,快速将单集群CD系统升级为多集群CD系统。通过增加分发策略(PropagationPolicy)和差异化策略(OverridePolicy),并修改单集群kubeconfig为舰队kubeconfig,可实现无损改造。该方案具备多地域多集群智能资源调度、重调度及故障迁移等能力,帮助用户提升业务效率与可靠性。
|
资源调度 Kubernetes 调度
从单集群到多集群的快速无损转型:ACK One 多集群应用分发
ACK One 的多集群应用分发,可以最小成本地结合您已有的单集群 CD 系统,无需对原先应用资源 YAML 进行修改,即可快速构建成多集群的 CD 系统,并同时获得强大的多集群资源调度和分发的能力。
1087 9

推荐镜像

更多