오늘은 팀원들과 Ngrok으로 서비스간의 연결이 원활하게 되도록 설정했다.
MSA인 프로젝트를 로컬로 통합테스트를 하기위해 10개의 서비스를 모두 띄운 뒤 테스트를 진행해야한다. 그렇다면 컴퓨터에도 부담이 크기도하고 통합테스트를 한명이 맡아서 QA역할을 하게 된다.
현재 MVP개발을 정해진 기간내에 개발하기도 쉽지않은데 QA역할을 한명이 맡아서 하기에는 어렵다는 판단이 들어 Ngrok을 이용해서 각 서비스를 직접 띄운 뒤 배포가 된 것 처럼 모든 서비스를 팀원들과 함께 테스트를 진행할 수 있다고 판단하여 진행하게 되었다.
Ngrok을 이번 기회로 처음 알게 되었다.
Ngork이란 로컬 개발 환경을 외부에서 접근이 가능하도록 호스팅해주는 서비스로, 배포 전 개발단계에서 유용하게 테스트 해볼 수 있는 환경을 제공해주는 것이라는 것을 알게되었다.

설치와 서버를 띄우는 방식은 간단하다.
1. ngrok 설치하기
2. 토큰 설정하기
3. ngrok으로 서버 띄우기
gateway와 eureka 까지 서버로 띄운 뒤 eureka에 저장을 하게 된다면 통합테스트를 쉽게 할 수 있다.
하지만 처음 세팅하는 시간인 만큼 버벅이는 시간도 많았다.
서비스의 yml파일로는 아래와 같이 설정하면 유레카에 등록이 되고, 서비스를 이용할 수 있게 된다.
eureka:
client:
service-url:
defaultZone: http://${유레카 ngrok 서비스 주소}/eureka/
register-with-eureka: true
fetch-registry: true
instance:
hostname: "${내 서비스 ngrok 발급 도메인}"
non-secure-port: ${내 서비스 포트번호} // -> http 몇 번 포트로 접속할 수 있는지
prefer-ip-address: false // -> eureka에 ip 주소로 저장(true) or hostname으로 등록할지(false)