이전 페이지: eureka-server 생성
다음 페이지: .env 파일 생성
개요
- eureka server에 각 서비스 모듈과 api-gateway를 등록해서 변화하는 서비스 모듈의 정보를 api-gateway가 감지할 수 있게 설정
- eureka client 의존성 필수
eureka client 설정
일단 user 서비스 프로젝트에서 작업을 시작함 (서비스 여러 개 구성할 예정이라면 아래 과정을 똑같이 하면됨)
우선 eureka client 의존성을 추가
https://start.spring.io/ 에서 spring client를 추가하고 하단의 EXPLORE 클릭 (GENERATE 아님)
plugins {
id 'java'
id 'org.springframework.boot' version '3.4.0'
id 'io.spring.dependency-management' version '1.1.6'
}
group = 'com.example'
version = '0.0.1-SNAPSHOT'
java {
toolchain {
languageVersion = JavaLanguageVersion.of(17)
}
}
repositories {
mavenCentral()
maven { url 'https://repo.spring.io/milestone' }
}
ext {
set('springCloudVersion', "2024.0.0-RC1")
}
dependencies {
implementation 'org.springframework.cloud:spring-cloud-starter-config'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
testRuntimeOnly 'org.junit.platform:junit-platform-launcher'
}
dependencyManagement {
imports {
mavenBom "org.springframework.cloud:spring-cloud-dependencies:${springCloudVersion}"
}
}
tasks.named('test') {
useJUnitPlatform()
}
EXPLORE를 누르면 이렇게 build.gradle 에 복붙 시켜줄 코드가 등장
이 중에 이미 있는 코드도 있을 텐데 제외하고 필요한 부분만 넣으면 됨.
그 다음으로는 어노테이션을 추가
@EnableDiscoveryClient
@SpringBootApplication
@EnableDiscoveryClient
public class KeupangGatewayApplication {
public static void main(String[] args) {
System.setProperty("security_username", System.getenv("security_username"));
System.setProperty("security_password", System.getenv("security_password"));
SpringApplication.run(KeupangGatewayApplication.class, args);
}
}
그 다음 application.yml 수정
eureka:
client:
fetch-registry: true
register-with-eureka: true
service-url:
defaultZone: http://admin:admin@localhost:8761/eureka
혹시 docker에 eureka 서버를 띄우고 사용중이라면 defaultZone에 localhost로 접근하면 안됨. -> 관련 설명은 여기 링크 추가할 예정
그리고 또 defaultZone에 admin 이것 또한 eureka server에 적용된 admin의 username와 password 이므로 이렇게 공개되면 안됨
-> env 파일을 사용해서 해결 가능하고 그 설명 또한 여기 링크 추가할 예정
화면 중단에 application name과 함께 잘 생겨있다면 성공
위에 KEUPANG-GATEWAY는 블로그보다 개발 과정이 빨라서 생긴놈
'MSA' 카테고리의 다른 글
[KEUPANG] API Gateway 생성 (2) | 2024.11.26 |
---|---|
[KEUPANG] Eureka Server 생성 (0) | 2024.11.25 |
[KEUPANG] User service project 생성 (0) | 2024.11.25 |
[KEUPANG] config server 생성 (0) | 2024.11.25 |
[KEUPANG] MSA Root Project 생성 (0) | 2024.11.25 |