티스토리 뷰
내가 쿠버네티스 클러스터에 배포해야하는 애플리케이션은 profile yaml파일이 굉장히 많았고, 이 profile을 동적으로 선택하는 것이었다. 로컬에서 돌릴 때는 configuration에서 그냥 값을 입력해주면 되지만 쿠버네티스 클러스터에 배포하기 위해서는 어느 시점에선가 active profile을 결정해줘야 했는데, 어떻게 해야할지 찾아보다가 오늘 해결했다.
내가 생각했을 때 프로파일을 결정할 수 있는 타이밍은 크게 두 가지가 있었는데, 하나는 docker 이미지로 만들 때와 다른 하나는 deployment로 파드를 만들 때이다. 배운 내용으로는 파드의 환경변수를 관리하는 게 configMap이니까 파드를 만들 때 configMap으로 넣어줄 수 있는지 알아봤는데, 내가 알아본 것으로는 그렇게 하기는 어렵고(아닐 수도 있음) docker 이미지를 만들 때 결정해주는 게 보다 쉬워보였다.
docker 이미지를 build하기 위한 dockerfile에 환경변수를 입력해주면 된다.
ENV JAVA_OPTS="-Dspring.profiles.active=dev"
이미지를 build하고 deployment를 실행해서 파드를 만들고 로그를 확인해보면 위에 설정한 대로 적용되었다는 것을 확인할 수 있다.
300x250
'공부흔적 > 쿠버네티스' 카테고리의 다른 글
Service에서 Pod를 어떻게 찾아서 접근하는지? (0) | 2022.04.27 |
---|---|
GKE에서 docker hub의 private 이미지로 Pod 생성하기 (0) | 2021.07.13 |
[대세는 쿠버네티스] GKE환경에서 대시보드 혹은 cmd창으로 생성하기, 노드에 접근하기 (0) | 2021.07.01 |
[대세는 쿠버네티스] GKE에서 서비스 생성시 external IP를 설정하는 문제 (0) | 2021.06.30 |
[대세는 쿠버네티스] GKE에서 dashboard 접근에 문제가 있을 때 (0) | 2021.06.30 |