// bootstrap.yml
spring:
cloud:
config:
uri:http://127.0.0.1:8888
name: ecommerce
// UserController.java
@GetMapping("/health_check")
public String status() {
return String.format("It's Working in User Service"
+ ", port(local.server.port)=" + env.getProperty("local.server.port")
+ ", port(server.port)=" + env.getProperty("server.port")
+ ", token secret=" + env.getProperty("token.secret")
+ ", token expiration time=" + env.getProperty("token.expiration_time"));
}
ecommerce.yml
에 작성된 정보를 뱉어내는 것을 볼 수 있다.
// bootstrap.yml
spring:
cloud:
config:
uri:http://127.0.0.1:8888
name: ecommerce
management:
endpoint:
web:
exposure:
include: refresh, health, beans, httptrace
// ApigatewayServiceApplication.java
@SpringBootApplication
public class ApigatewayServiceApplication {
public static void main(String[] args) {
SpringApplication.run(ApigatewayServiceApplication.class, args);
}
@Bean
public HttpTraceRepository httpTraceRepository() {
return new InMemoryHttpTraceRepository();
}
}
// ecommerce-dev.yml
token:
expiration_time: 86400000
secret: my_token_dev
gateway:
ip: {본인 ip}
// ecommerce-prod.yml
token:
expiration_time: 86400000
secret: my_token_prod
gateway:
ip: {본인 ip}
// UserService의 bootstrap.yml
spring:
cloud:
config:
uri: http://127.0.0.1:8888
name: ecommerce
profiles:
active: dev
// API Gateway의 bootstrap.yml
spring:
cloud:
config:
uri: http://127.0.0.1:8888
name: ecommerce
profiles:
active: prod
ecommerce.yml
파일들이 저장된 곳을 git에 올린다ConfigService
의 Application.yml
파일을 수정한다. spring:
application:
name: config-service
cloud:
config:
server:
git:
uri: [git repo주소]
username: [your username] # private 일시 적용
password: [your password] # private 일시 적용