728x90
실행 중인 Docker 컨테이너에서 KST로 시간대 변경
1. 현재 시간 확인
date
2. 현재 타임존 확인
ls -al /etc/localtime
결과: /etc/localtime -> /usr/share/zoneinfo/Etc/UTC
만약, /etc/localtime이 없을 경우?
/ # ls -al /etc/localtime
ls: /etc/localtime: No such file or directory
> 이건 단순히 시간대 설정이 명시적으로 지정되지 않은 상태입니다.
→ 리눅스는 기본적으로 UTC 시간대로 동작하게 되어 있어서,
/etc/localtime이 없으면 그냥 UTC로 작동합니다.
3. 시간대 변경 (KST)
ln -sf /usr/share/zoneinfo/Asia/Seoul /etc/localtime
4. 변경 확인
ls -al /etc/localtime # → /etc/localtime -> /usr/share/zoneinfo/Asia/Seoul date # → KST 출력돼야 정상
✅ 전제 조건
- /usr/share/zoneinfo/Asia/Seoul 경로가 있어야 하며,
- tzdata가 설치된 상태여야 /usr/share/zoneinfo 경로가 존재합니다.
tzdata 패키지 설치 확인
- e : *--installed 또는 --exists의 줄임말
apk info -e tzdata
❗ 만약 tzdata가 설치 안 되어 있다면?
/usr/share/zoneinfo/Asia/Seoul이 없고, 아래와 같은 오류 발생합니다:
ln: /usr/share/zoneinfo/Asia/Seoul: No such file or directory
이 경우는 한 번만:
apk add --no-cache tzdata
설치 후 위 과정 다시 진행하시면 됩니다.
✅ 정리: 말씀하신 방법은 정확하며, 단 tzdata가 이미 설치된 상태일 때만 작동합니다.
추가 설치 없이 잘 되면 그대로 쓰셔도 됩니다!
❗ apt / apk ... 등 설치가 안되어 있다면?
1. 리눅스 배포판 버전 확인
cat /etc/os-release
2. 배포판 버전에 따라 맞는 패키지 매니저(dpkg, apt 등) 설치
- Debian에서는 dpkg 또는 apt를 사용
apt update
apt install -y tzdata
- Alpine 알파인은 apk 사용
✅ 주요 패키지 관리자 예시
| 배포판 | 패키지 관리자 | 명령어 예 |
|-------------------------------------|-----------------------------|------------------------------------|
| Debian / Ubuntu | `dpkg`, `apt` | `apt install`, `dpkg -l` |
| RedHat / CentOS / Fedora | `yum`, `dnf` | `yum install`, `dnf install` |
| Alpine Linux | `apk` | `apk add`, `apk info` |
| Arch Linux | `pacman` | `pacman -S`, `pacman -Qs`|
| Gentoo | `emerge` | `emerge --search` |
| macOS | `brew` (Homebrew) | `brew install` |
참고
728x90
'공부 > 추가공부' 카테고리의 다른 글
| 프로젝트 관리(gantt) (0) | 2025.06.30 |
|---|---|
| offset (0) | 2025.06.23 |
| 🧭 프로젝트 일정관리 핵심: 리딩, 래깅, 그리고 크리티컬 패스 (1) | 2025.04.24 |
| JPA 단어(transient) (0) | 2025.03.28 |
| Kafka, Grafana, Nomad (0) | 2025.03.10 |