- ประเด็นคือ ใหม่กับ container docker เลยพึ่งรู้ว่า container มี timezone ของตัวเองเป็น UTC
- อยากจะแก้เป็น +07 Asia/Bangkok
Option 1
- ตั้งค่าตอนจะรัน container (ถ้า image support TZ environment e.g. Debian,Ubuntu,Alpine)
$ docker run -e TZ=Asia/Bangkok -d your-image
- หรือ monting จาก host แม่มาใช้
$ docker run -v /etc/localtime:/etc/localtime:ro -v /etc/timezone:/etc/timezone:ro -d your-image
Option 2
- ตั้งตอนอัพเดท image ใน Dockfile
FROM ubuntu:22.04# Install tzdata and set the time zoneRUN apt-get update && apt-get install -y tzdata && \ln -fs /usr/share/zoneinfo/Asia/Bangkok /etc/localtime && \dpkg-reconfigure -f noninteractive tzdata
- แล้วก็สั่ง build image จาก Dockfile
$ docker build -t your-image .
Option 3
- อัพเดท container ที่กำลังรันอยู่
$ docker exec -it your-container-name /bin/bash
# apt-get update && apt-get install -y tzdata# ln -fs /usr/share/zoneinfo/Asia/Bangkok /etc/localtime# dpkg-reconfigure -f noninteractive tzdata
- ใน option 3 จะทำให้ container หยุดทำงานต้องสั่ง รันใหม่ แต่ถ้าคอนฟิกแล้วจะให้ restart auto ก็อย่าลืม set config container restart: always
- https://juuier.blogspot.com/2024/12/container-docker-restart-host-restart.html
Ref
- https://chatgpt.com/share/675b9df0-89b0-8010-afae-159279c71aca
No comments:
Post a Comment