background Recently, some friends who are new to Docker asked me that they want to dynamically pass parameters to microservices through Scenario Suppose there is a Springboot project with a database configuration item in it, but there are multiple database IPs in different database test environments (DEV\SIT\UAT). If you want to use the same Springboot project image, you can switch the database configuration at any time. In short, the database configuration of your Springboot application should be passed in externally instead of hardcoded. There is a database configuration in the Springboot application as follows: spring.datasource.url = jdbc:mysql://192.168.0.11:3306/db?useUnicode=true&characterEncoding=utf8 #Configure database username spring.datasource.username = sa #Configure database password spring.datasource.password = sa Solution Use Next, we replace the database configuration with a spEL expression in the Springboot configuration file #Configure database link spring.datasource.url = jdbc:mysql://${DB_HOST}:${DB_PORT}/${DB_NAME}?useUnicode=true&characterEncoding=utf8 #Configure database username spring.datasource.username = ${DB_USER} #Configure database password spring.datasource.password = ${DB_PASSWORD} Configure our database parameters in version: '3' services: web: restart: always depends_on: -db image: springboot-app-image build: . ports: - 8080:8080 environment: - DB_HOST=192.168.0.11 - DB_PORT=3306 - DB_USER=root - DB_PASSWORD=123456 - DB_NAME=db networks: - credit-facility-net deploy: mode: replicated replicas: 3 restart_policy: condition: on-failure delay: 5s max_attempts: 3 update_config: parallelism: 1 delay: 10s In this way, our Springboot application can dynamically obtain the database configuration when starting the container service This is the end of this article about how Docker dynamically passes parameters to Springboot projects. For more information about Docker Springboot dynamic parameter passing, please search for previous articles on 123WORDPRESS.COM or continue to browse the following related articles. I hope you will support 123WORDPRESS.COM in the future! You may also be interested in:
|
<<: Detailed explanation of MySQL data rows and row overflow mechanism
>>: Four ways to modify the default CSS style of element-ui components in Vue
The specific code is as follows: <div id="...
This article originated from the homework assignm...
Demand background: Insert GIF dynamic images into...
Overview The cloud platform customer's server...
What is HTTP Compression Sometimes, relatively la...
If you are a software developer, you must be fami...
Here is a common one-click performance test scrip...
Back in the Kernel 2.6 era, a new security system...
Table of contents 1. Basic Example 2. Set the sco...
There are three types of MySQL stored procedure p...
Table of contents Partitioning mechanism SELECT q...
I always feel that designers are the most sensiti...
Click here to return to the 123WORDPRESS.COM HTML ...
1. Implement call step: Set the function as a pro...
echarts component official website address: https...