[Docker] 컨테이너 timezone 변경
·
Docker, Container
상황 현재 개발 중인 서비스에는 1분 배치 단위로 작동하는 스케줄러가 존재한다. 사용자의 알약 복용 스케줄에 맞춰서 알림을 보내주는데, 개발 서버에 배포 후 테스트 하는 과정에서 복용 시간이 지났는데도 알림이 전송되지 않고 기록도 남지 않는 문제가 발생하였다. 처음에는 알림을 보내주는 과정에서 문제가 발생하였다고 생각하였지만, 알림 전송에 실패하는 경우에도 기록은 남기도록 로직을 작성하였기에, 복용 시간을 스캔하는 과정에서 문제가 있다고 생각하였다. 문제를 디버깅한 결과, 개발 서버의 컨테이너 시간이 UTC(세계 협정시)였기 때문에 스케줄러가 해당 루틴을 찾지 못했었던 것이다.데이터베이스에 복용 루틴을 utc를 고려한 timestamptz으로 변경하는 방법도 있지만, 국내에서만 출시를 할 계획이기 때문에..