`

spring cloud config

阅读更多
一、什么是spring cloud config
  1.Spring Cloud Config的作用
  在微服务架构系统中,有大量的应用分布在不同机器或容器中运行,如何方便统一的管理这些应用的配置信息是一个不小的挑战,spring cloud config就是用来解决这个问题的.spring cloud config同时包含服务端和客户端支持,其中服务端对应一个配置中心来管理所有应用的外部配置,客户端通过服务端来从配置中心获取自己应用对应的配置信息。无论是服务端还是配置端主要的原理都是把配置信息映射到Environment 和 PropertySource,所以spring cloud config能很好的和spring应用结合起来。
  2.Spring Cloud Config架构图(git)


  3.架构说明
 
  • ⑴ 通过git操作上传、修改配置文件
  • ⑵ config server 模块将git上最新的信息同步到自己的Environment中
  • ⑶ 通过发送post请求触发客户端刷新自己的配置信息(可以在git中追加webhooks来自动实现)
  • ⑷ 客户端接收到post请求后重新从config server中拉取自己对应的配置信息


二、如何使用spring cloud config
  1.官方demo例子
   
  2. 如何使用官方例子(基于git版简单说明)
 

       
  • ⑴ 工程介绍

  •       ① configuration-service:服务端,负责从GIT仓库中获得配置信息
          ② configuration-client:客户端,即我们的应用程序,从server端获取配置信息

      
  • ⑵ server端配置


  •  
      
  • ⑶ client端配置
  •  


      
  • ⑷ git仓库配置



  •   
  • ⑸ git webhooks配置




三、制作server端docker镜像
1.编辑Dockerfile

#基础镜像基于openjdk,利用alpine
FROM openjdk:8-jre-alpine

#所属团队
MAINTAINER chengaofeng
#编译时变量
ARG TARGET_JAR

ENV TARGET_JAR ${TARGET_JAR:-spring-configuration-server-0.0.1-SNAPSHOT.jar}

# git用户和密码
ENV GIT_USERNAME=chengaofeng GIT_PASSWORD=admin222

# 中心化配置git工程URI
ENV GIT_URI=http://192.168.0.104/chengf/config.git
ENV PORT=8888
#将编译好的工程jar包copy到镜像容器中
COPY target/${TARGET_JAR} /usr/src/${TARGET_JAR}

#设置工作目录
WORKDIR /usr/src

#程序入口
CMD java -jar ${TARGET_JAR} --server.port=${PORT} --spring.cloud.config.server.git.uri=${GIT_URI} --spring.cloud.config.server.git.username=${GIT_USERNAME} --spring.cloud.config.server.git.password=${GIT_PASSWORD}

2.  编译镜像,Dockerfile在server工程根目录
docker build -t config-server .

3.  启动镜像
docker run –d -p 8888:8888 config-server

如果git仓库地址变动,或者用户名、密码变更利用对应的启动参数,例如当git仓库地址变更时:
docker run –d  -p 8888:8888  -e GIT_URI="http://www.domain.com/production/config.git" config-server


四、config-server基于本地文件
配置文件:
---
spring:
  cloud:
    config:
      server:
        native:
          searchLocations: classpath:/config

server:
  port: 8888

client需要的配置文件放在 classpath下的config目录中,仍旧是用appName来做区分
如:
client-server1.yml
client-server2.yml
  • 大小: 31.3 KB
  • 大小: 44.9 KB
  • 大小: 43.4 KB
  • 大小: 33.2 KB
  • 大小: 47.6 KB
分享到:
评论

相关推荐

    spring cloud config、bus源码

    Spring Cloud Config/Bus 源码解读 本文将对 Spring Cloud Config/Bus 的源码进行解读,涵盖 Server 端、Client 端、Bus 的运行原理等方面的内容。 一、初始化 在 Spring Cloud Config/Bus 中,初始化的过程主要...

    SpringCloud Config Demo编写

    1.Spring Cloud Config 用于为分布式系统中的基础设施和微服务应用提供集中化的外部配置支持,分为服务端和客户端。 2.服务端为分布式配置中心,是一个独立的微服务应用;客户端为分布式系统中的基础设置或微服务...

    Spring Cloud Config(本地配置中心或git配置中心)

    Spring Cloud Config 是一个用于微服务架构的集中式配置管理工具,它允许开发人员在不同的环境中管理应用程序的配置。本文将详细介绍如何搭建Spring Cloud Config,并探讨其作为本地配置中心和Git配置中心的两种模式...

    Spring Cloud Config Demo

    Spring Cloud Config 是一款基于Spring Boot实现的配置管理工具,它允许开发者在远程服务器上集中管理和动态更新应用的配置,使得微服务架构中的配置管理变得更加便捷。这个"Spring Cloud Config Demo"是一个实例,...

    《深入理解Spring Cloud与微服务构建》学习笔记(二十)~配置中心Spring Cloud Config

    在本篇学习笔记中,我们将深入探讨Spring Cloud Config——一个强大的配置管理工具,它使得在分布式系统中管理和分发配置变得简单。Spring Cloud Config支持服务器端和客户端两种组件,允许我们在开发过程中动态地...

    spring cloud config 代码示例

    Spring Cloud Config 是一个用于管理应用配置的微服务框架,它允许开发者在开发、测试和生产环境中,以集中化、外部化的方式管理应用的配置。这个框架使得配置可以在不同的环境之间轻松切换,为分布式系统的配置管理...

    基于Spring Cloud Config的Spring Cloud Config Admin设计源码

    本项目为基于Spring Cloud Config的Spring Cloud Config Admin设计源码,集成了495个文件,涵盖191个JavaScript文件、78个Java源文件、65个图片文件(包括jpg和png)、24个属性文件、23个SVG文件、17个XML文件、10个...

    SpringCloud——分布式配置中心(Spring Cloud Config)

    在微服务架构中,Spring Cloud Config 是一个强大的分布式配置中心,它允许开发人员将应用程序的配置存储在远程仓库中,并且可以在运行时动态地管理和更新这些配置,无需重启应用。这个特性对于大型分布式系统来说...

    spring-cloud config详细demo

    Spring Cloud Config 是一个用于微服务架构的外部配置中心,它允许开发者在运行时动态地管理和配置应用程序。这个详细Demo将涵盖Spring Cloud Config的使用方法,包括集群搭建和与Eureka服务发现组件的集成。让我们...

    spring cloud中文版【Spring Cloud Config】--spring cloud中文文档.pdf

    Spring Cloud Config是Spring Cloud提供的一个解决分布式系统配置管理的解决方案。它包括服务端和客户端两个部分,服务端提供了一个集中的配置管理点,支持将配置文件存储在Git、SVN等版本控制系统中,并能够支持...

    如何用Spring Cloud Config统一配置管理,0基础!!易懂!!.html

    为了简化配置管理,并且在不同环境(如开发、测试、生产)中灵活切换,我们可以使用Spring Cloud Config实现统一配置管理。 本文将详细介绍如何使用Spring Cloud Config实现统一配置管理,涵盖以下内容: Spring ...

    spring cloud config client 服务配置中心 客户端

    Spring Cloud Config Client是Spring Cloud生态系统中的一个组件,它允许微服务应用从远程配置服务器获取配置信息,实现配置的集中管理和动态更新。这个组件是服务配置中心的重要组成部分,它极大地简化了分布式系统...

    Spring Cloud Config

    `cloudconfig` 文件可能包含一个简单的Spring Cloud Config 示例应用,该应用展示了如何创建Config Server,配置客户端,以及如何在Git仓库中组织配置文件。通过分析这个示例,你可以更直观地理解Spring Cloud ...

    spring cloud config 和 bus 源码解读

    Spring Cloud Config是Spring Cloud的一部分,旨在为微服务架构提供集中化的外部配置支持,配置内容可以从各种外部资源(如配置文件、数据库、环境变量等)加载。Spring Cloud Bus用于管理和传播分布式系统中的消息...

    微服务框架 springcloud config 自动刷新远程svn配置代码示例

    在IT行业中,微服务架构已经成为了现代应用开发的主流方式,Spring Cloud Config作为一个强大的工具集,为微服务提供了集中化的外部配置支持。本示例主要关注如何利用Spring Cloud Config实现远程SVN配置的自动化...

    springcloud config配置中心

    Spring Cloud Config 是一个用于微服务架构中的外部化配置服务器,它允许我们将应用程序的配置存储在远程仓库中,然后在运行时动态地为服务提供配置。这样可以方便地管理和更新多个环境(如开发、测试、生产)下的...

    微服务架构下的配置管理:Spring Boot与Spring Cloud Config集成指南

    Spring Cloud Config提供了一种集中化的配置管理解决方案,它允许你将所有微服务的配置集中存储在一个配置服务器上,并支持动态刷新配置。本文将详细介绍如何在Spring Boot中集成Spring Cloud Config,并与Vue.js...

    Spring Cloud Bus配合Spring Cloud Config使用可以实现配置的动态刷新(2.自动动态刷新).zip

    Spring Cloud Bus配合Spring Cloud Config使用可以实现配置的动态刷新 spring cloud bus能管理和传播分布式系统间的消息,就像分布式执行器,可用于广播状态更改、时间推送等,也可以当做微服务间的通信通道 spring ...

Global site tag (gtag.js) - Google Analytics