대부분 이미지는 UST로 설정이 되어있고 커스텀한 이미지가 아니면 따로 시간을 설정해줘야 한다. 그리고 이런 부분은 생각보다 DB 컨테이너 등 시간에 민감한 컨테이너 이미지일 경우 시도하면 좋아서 글을 쓰려고 한다.
대부분의 공식적인 이미지는 컨테이너 내부에서 커널사용이 제한적이기 때문에 볼륨설정으로 시간을 설정함
deployment.yaml을 작성 시 추가한 코드
spec.template.spec.containers.volumeMounts
spec.template.spec.volumes
volumeMounts:
- mountPath: /etc/localtime
name: tz-seoul
volumes:
- name: tz-seoul
hostPath:
path: /usr/share/zoneinfo/Asia/Seoul
코드에 대해 간략하게 말하자면
spec.template.spec.volumes 이 옵션을 통해 Node상에 위치하는 Mount경로를 잡고
containers의 경로를 설정하는 것이다.
이 동작이 이루어지려면 Pod가 생성되는 노드가 지정이되어야하며 그 노드 볼륨을 Mount하는 것이기 때문에 암묵적으로 affinity라는 옵션도 공부해야한다!
참고문서
https://nearhome.tistory.com/100
위의 코드를 활용하여 적용한 결과는 아래와 같다.
수정 23.11.21 화요일
시스템적으로 /etc/localtime이 심볼릭 링크가 걸리지않아 애플리케이션에서는 한국시간으로 나오지않음
Dockerfile 내 명령어 한줄 추가
RUN ln -s /usr/share/zoneinfo/Asia/Seoul /etc/localtime