Skip to main content

How to create Spring boot cloud config server


What is Spring boot cloud config server?

Spring Cloud Config Server provides an HTTP resource-based API for external configuration (name-value pairs or equivalent YAML content). The server is embeddable in a Spring Boot application, by using the @EnableConfigServer annotation. Consequently, the following application is a config server
In Simple terms, Spring boot cloud config server takes your application.yml or application.properties from your spring boot application and serve it over HTTP, and spring application which need to use it just need to delete the application.yml or application.properties and create one bootstrap.yml/properties and defined 2 simple properties spring.application.name and spring.cloud.config.uri



  • Create New java project using one of following instructions.
  1. Create project with Java, maven and Intellij

  • Edit POM.xml, add following content in pom.xml
First specify the packaging

jar
also add parent of this pom to be
NOTE: You can lookup the latest version for parent from here, I will advise to use latest version if possible at the time of writing this article its 2.0.4.RELEASE.


Add Rest of dependencies Right Click on Java folder and create new Java file com.next.config.SpringCloudConfigServer
NOTE : the annotation to enable config server



Add application.yml file in resources


Create Directory /tmp/config (if you are on Mac or Linux), on windows you can create directory like c:/tmp/config and update the application.yml with this path.

create a file application.yml in directory /tmp/config or c:/tmp/config
I am adding only one property for simplicity, but feel free to add as many as you like.

once file is created, initialise the git on this folder by running following commands.
Now the server is ready with minimum capabilities, that it can serve this application.yml from /tmp/config folder via http.

Start the server by right clicking on java file SpringCloudConfigServer and select Run,
once started visit http://localhost:8888/application/profile (basically url structure is http://localhost:8888/<application name>/<profile name(s)> and this will show you the content of /tmp/config/application.yml in format something like this

We have just seen simplest implementation of Spring Cloud Config server, this server doesn't care what application name or profile you passed to it, it will always return content of /tmp/config/application.yml which is not suitable for a production setup, as you may want to run multiple application in multiple environments(profiles).

I will explain such scenario in next section.

Comments

  1. Great job, You are providing good knowledge. It is really helpful and factual information for us and everyone to increase knowledge. Continue sharing your data. Thank you. IT support and services

    ReplyDelete
  2. The great service in this blog and the nice technology is visible in this blog. I am really very happy for the nice approach is visible in this blog and thank you very much for using the nice technology in this blog
    Best Project Management Software

    ReplyDelete
  3. I really want to thank the author for such a nice blog that helped me to understand why it is important. Oracle Manufacturing Cloud training in bangalore

    ReplyDelete
  4. I will share it with my other friends as the information is really very useful. Keep sharing your excellent work. it outsourcing

    ReplyDelete
  5. I read this article, it is really informative one. Your way of writing and making things clear is very impressive. Thanking you for such an informative article.New Mumbai Flats

    ReplyDelete
  6. You have worked nicely with your insights that makes our work easy.The information you have provided is really factual and significant for us. Keep sharing these types of article, Thank you.cloud phone system

    ReplyDelete
  7. You shared an excellent article with us. This article gives some unique knowledge to us. Keep sharing more posts.
    Best UPVC Windows and Doors Manufacturer in Chennai | Latest Upvc Doors in Chennai
    | Best UPVC Windows in Chennai

    ReplyDelete

Post a Comment

Popular posts from this blog

How to add custom user attributes in keycloak and access them in spring boot application

Sometime it may be possible you want to add more parameters to standard registration page of keyloak for your users and aaccess that data in your spring boot application. This artical will show step by steps on how to add such extra attributes. What is Keycloak Keycloak is an open source software product to allow single sign-on with Identity Management and Access Management aimed at modern applications and services, to learn more visit  h ttps://www.keycloak.org/ What is Spring boot Spring Boot makes it easy to create stand-alone, production-grade Spring based Applications that you can "just run". To learn more visit  https://spring.io/projects/spring-boot To add an extra attribute in keyclkoak server you will need to edit actuall html template and then registaer new attribute in json response so that it will be available on client. Edit HTML template Lets assume we want to add mobile number on default registration page. Go to Keycloak home installation directory edit fil

How to run Bash commands in parallel and wait before all commands finished

In this article i will explain how you can run commands in parallel and make sure you wait until all commands and have finished and then move forward. Say you have a script which downloads few files or yu have to compile different maven project(independent of each other) or something else which can run in parallel and you have got a good machine which can run these tasks in parallel so that overall you can run the full task in lowest time. For this you can use back ground task and wait from unix. When you add & to any command that command runs in background What is wait command? wait is a built-in command of Linux that waits for completing any running process. wait command is used with a particular process id or job id. When multiple processes are running in the shell then only the process id of the last command will be known by the current shell. If wait command is executed this time, then it will be applied for the last command. If no process id or job id is given with wai