1. 程式人生 > >Spring Cloud雲服務架構 - commonservice-config配置服務搭建

Spring Cloud雲服務架構 - commonservice-config配置服務搭建

project use color desc mon xsd -s 服務器 屬性。

  • 介紹
  • Spring Cloud Config為分布式系統中的外部配置提供服務器和客戶端支持。使用Config Server,您可以在所有環境中管理應用程序的外部屬性。客戶端和服務器上的概念映射與Spring Environment和PropertySource抽象相同,因此它們與Spring應用程序非常契合,但可以與任何以任何語言運行的應用程序一起使用。隨著應用程序通過從開發人員到測試和生產的部署流程,您可以管理這些環境之間的配置,並確定應用程序具有遷移時需要運行的一切。服務器存儲後端的默認實現使用git,因此它輕松支持標簽版本的配置環境,以及可以訪問用於管理內容的各種工具。很容易添加替代實現,並使用Spring配置將其插入。

    1. 引入pom相關jar包,其中pom.xml配置如下:

      <?xml version="1.0" encoding="UTF-8"?>    
      <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    
      xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">    
      <modelVersion>4.0.0</modelVersion>    
      
      <parent>    
          <groupId>com.ml.honghu</groupId>    
          <artifactId>commonservice</artifactId>    
          <version>0.0.1-SNAPSHOT</version>    
      </parent>    
      
      <artifactId>commonservice-config</artifactId>    
      <packaging>jar</packaging>    
      
      <name>commonservice-config</name>    
      <description>Config Server</description>    
      
      <dependencies>    
          <dependency>    
              <groupId>org.springframework.cloud</groupId>    
              <artifactId>spring-cloud-config-server</artifactId>    
          </dependency>    
          <dependency>    
              <groupId>org.springframework.cloud</groupId>    
              <artifactId>spring-cloud-starter-eureka</artifactId>    
          </dependency>    
          <dependency>    
                      <groupId>org.springframework.boot</groupId>    
                      <artifactId>spring-boot-starter-security</artifactId>    
              </dependency>    
          <dependency>    
              <groupId>org.springframework.boot</groupId>    
              <artifactId>spring-boot-starter-test</artifactId>    
              <scope>test</scope>    
          </dependency>    
      </dependencies>    
      
      <build>    
          <plugins>    
              <plugin>    
                  <groupId>org.springframework.boot</groupId>    
                  <artifactId>spring-boot-maven-plugin</artifactId>    
                  <executions>    
                      <execution>    
                          <id>1</id>    
                          <goals>    
                              <goal>repackage</goal>    
                          </goals>    
                      </execution>    
                                      <execution>    
                                          <id>2</id>    
                                              <goals>    
                                                     <goal>build-info</goal>    
                                              </goals>    
                                      </execution>    
                  </executions>    
              </plugin>    
          </plugins>    
      </build>    
      </project>    
      1. 在src/main/java進行ConfigApplication.java啟動文件配置:

    package com.ml.honghu;

    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    import org.springframework.cloud.config.server.EnableConfigServer;
    import org.springframework.cloud.netflix.eureka.EnableEurekaClient;

    @EnableConfigServer
    @EnableEurekaClient
    @SpringBootApplication
    public class ConfigApplication {

    public static void main(String[] args) {    
        SpringApplication.run(ConfigApplication.class, args);    
    }    

    }

    4. 在src/main/resource下進行bootstrap.yml配置

    server:
    port: 8888
    spring:
    application:
    name: commonservice-config-server
    profiles:
    active: discovery,native
    cloud:
    config:
    server:
    git:
    uri: http://192.168.0.254/honghu.../honghu-config.git
    username: honghu
    password: 123456
    searchPaths: config-dev
    security:
    basic:
    enabled: true
    user:
    name: honghu
    password: 123456
    eureka:
    client:
    serviceUrl:
    defaultZone: http://honghu:123456@localhost:8761/eureka/
    honghuZone: http://honghu:123456@localhost:8761/eureka/
    registry-fetch-interval-seconds: 300
    availability-zones:
    honghu: honghuZone
    instance:
    prefer-ip-address: true
    metadataMap:
    version: 1.0
    variant: A
    user: ${security.user.name}
    password: ${security.user.password}
    management:
    security:
    enabled: false

    
    註意: 如果不從遠程git或者svn庫加載配置文件信息,可以配置加載本地地址,比如window下配置使用:歡迎大家一起學習研究相關技術願意了解源碼的朋友直接求求交流分享技術:2147775633

    server:
    port: 8888
    spring:
    application:
    name: commonservice-config-server
    profiles:
    active: discovery,native
    cloud:
    config:
    server:
    <span style="color: #ff0000;">native.searchLocations: d:/honghu-config</span>
    security:
    basic:
    enabled: true
    user:
    name: honghu
    password: 123456
    eureka:
    client:
    serviceUrl:
    defaultZone: http://honghu:123456@localhost:8761/eureka/
    honghuZone: http://honghu:123456@localhost:8761/eureka/
    registry-fetch-interval-seconds: 300
    availability-zones:
    honghu: honghuZone
    instance:
    prefer-ip-address: true
    metadataMap:
    version: 1.0
    variant: A
    user: ${security.user.name}
    password: ${security.user.password}
    management:
    security:
    enabled: false

    
    到此,整個config服務項目配置完畢!!

    Spring Cloud雲服務架構 - commonservice-config配置服務搭建