Spring Boot - Servidor de configuración en la nube

Spring Cloud Configuration Server es una aplicación centralizada que administra todas las propiedades de configuración relacionadas con la aplicación. En este capítulo, aprenderá en detalle cómo crear un servidor de configuración Spring Cloud.

Creación del servidor de configuración de Spring Cloud

Primero, descargue el proyecto Spring Boot de la página Spring Initializer y elija la dependencia Spring Cloud Config Server. Observe la captura de pantalla que se muestra a continuación:

Ahora, agregue la dependencia del servidor Spring Cloud Config en su archivo de configuración de compilación como se explica a continuación:

Los usuarios de Maven pueden agregar la siguiente dependencia en el archivo pom.xml.

<dependency>
   <groupId>org.springframework.cloud</groupId>
   <artifactId>spring-cloud-config-server</artifactId>
</dependency>

Los usuarios de Gradle pueden agregar la siguiente dependencia en su archivo build.gradle.

compile('org.springframework.cloud:spring-cloud-config-server')

Ahora, agregue la anotación @EnableConfigServer en su archivo principal de clase de la aplicación Spring Boot. La anotación @EnableConfigServer hace que su aplicación Spring Boot actúe como un servidor de configuración.

El archivo principal de clase de la aplicación Spring Boot se muestra a continuación:

package com.tutorialspoint.configserver;

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

@SpringBootApplication
@EnableConfigServer
public class ConfigserverApplication {
   public static void main(String[] args) {
      SpringApplication.run(ConfigserverApplication.class, args);
   }
}

Ahora, agregue la siguiente configuración a su archivo de propiedades y reemplace el archivo application.properties en el archivo bootstrap.properties. Observe el código que se proporciona a continuación:

server.port = 8888
spring.cloud.config.server.native.searchLocations=file:///C:/configprop/
SPRING_PROFILES_ACTIVE=native

Configuration Server se ejecuta en el puerto 8888 de Tomcat y las propiedades de configuración de la aplicación se cargan desde ubicaciones de búsqueda nativas.

Ahora en file:///C:/configprop/, coloque su aplicación cliente - archivo application.properties. Por ejemplo, el nombre de su aplicación cliente esconfig-client, luego cambie el nombre de su archivo application.properties como config-client.properties y coloque el archivo de propiedades en la ruta file:///C:/configprop/.

El código para el archivo de propiedades del cliente de configuración se proporciona a continuación:

welcome.message = Welcome to Spring cloud config server

El archivo de configuración de compilación completo se proporciona a continuación:

Los usuarios de Maven pueden usar pom.xml dado a continuación -

<?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>
   <groupId>com.tutorialspoint</groupId>
   <artifactId>configserver</artifactId>
   <version>0.0.1-SNAPSHOT</version>
   <packaging>jar</packaging>

   <name>configserver</name>
   <description>Demo project for Spring Boot</description>
   <parent>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-parent</artifactId>
      <version>1.5.9.RELEASE</version>
      <relativePath/> <!-- lookup parent from repository -->
   </parent>

   <properties>
      <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
      <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
      <java.version>1.8</java.version>
      <spring-cloud.version>Edgware.RELEASE</spring-cloud.version>
   </properties>

   <dependencies>
      <dependency>
         <groupId>org.springframework.cloud</groupId>
         <artifactId>spring-cloud-config-server</artifactId>
      </dependency>
      <dependency>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter-test</artifactId>
         <scope>test</scope>
      </dependency>
   </dependencies>

   <dependencyManagement>
      <dependencies>
         <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-dependencies</artifactId>
            <version>${spring-cloud.version}</version>
            <type>pom</type>
            <scope>import</scope>
         </dependency>
      </dependencies>
   </dependencyManagement>

   <build>
      <plugins>
         <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
         </plugin>
      </plugins>
   </build>
   
</project>

Los usuarios de Gradle pueden usar el archivo build.gradle que se muestra a continuación:

<scope>import</scope>
</dependency>
</dependencies>
buildscript {
   ext {
      springBootVersion = '1.5.9.RELEASE'
   }
   repositories {
      mavenCentral()
   }
   dependencies {
      classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
   }
}
apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'org.springframework.boot'

group = 'com.tutorialspoint'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = 1.8

repositories {
   mavenCentral()
}
ext {
   springCloudVersion = 'Edgware.RELEASE'
}
dependencies {
   compile('org.springframework.cloud:spring-cloud-config-server')
   testCompile('org.springframework.boot:spring-boot-starter-test')
}
dependencyManagement {
   imports {
      mavenBom "org.springframework.cloud:spring-cloud-dependencies:${springCloudVersion}"
   }
}

Ahora, cree un archivo JAR ejecutable y ejecute la aplicación Spring Boot utilizando los siguientes comandos de Maven o Gradle:

Para Maven, use el comando que se indica a continuación:

mvn clean install

Después de "BUILD SUCCESS", puede encontrar el archivo JAR en el directorio de destino.

Para Gradle, use el comando que se proporciona a continuación:

gradle clean build

Después de "BUILD SUCCESSFUL", puede encontrar el archivo JAR en el directorio build / libs.

Ejecute el archivo JAR utilizando el siguiente comando:

java –jar <JARFILE>

Ahora, la aplicación ha comenzado en el puerto 8888 de Tomcat como se muestra aquí -

Ahora presiona la URL http://localhost:8888/config-client/default/master en su navegador web y puede ver las propiedades de configuración de la aplicación config-client como se muestra aquí.