Some of the links shared in this post are affiliate links. If you click on the link and make a purchase, we will receive an affiliate commission at no additional cost to you.
Docker adalah alat yang ampuh untuk mengisolasi aplikasi dalam kontainer dan menjalankannya secara independen. Ketika menggunakan Docker, sering kali penting untuk mengonfigurasi zona waktu dengan benar, terutama untuk proses yang bergantung pada waktu. Dalam artikel ini, Anda akan mempelajari cara menggunakan variabel lingkungan TZ di Docker, apa yang dilakukannya, dan zona waktu yang tersedia.
Apa yang dimaksud dengan variabel lingkungan TC?
Variabel lingkungan TZ memungkinkan Anda mengatur zona waktu untuk kontainer Docker. Secara default, kontainer Docker mengadopsi zona waktu dari sistem host. Namun, jika Anda ingin memastikan bahwa kontainer Anda menggunakan zona waktu tertentu, Anda dapat mengontrolnya menggunakan variabel TZ.
Mengapa konfigurasi zona waktu penting?
Zona waktu yang tepat adalah hal yang krusial:
- Stempel waktu: Aplikasi yang menghasilkan stempel waktu (misalnya dalam log atau entri basis data) harus membuatnya dalam zona waktu yang benar.
- Tugas terjadwal: Pekerjaan Cron atau tugas berbasis waktu lainnya harus dijalankan pada waktu setempat yang benar.
- Aplikasi global: Jika aplikasi Anda digunakan oleh pengguna di zona waktu yang berbeda, maka penting untuk melokalisasi waktu dengan benar.
Cara menggunakan variabel lingkungan TZ di Docker
Untuk menentukan zona waktu suatu kontainer Docker, tetapkan variabel lingkungan TZ saat memulai kontainer. Ini dilakukan dengan sakelar -e
(atau --env
), diikuti dengan spesifikasi zona waktu yang diinginkan.
Contoh: Memulai kontainer dengan zona waktu yang ditentukan
Dengan asumsi Anda ingin memulai sebuah kontainer dan mengatur zona waktu ke “Eropa/Berlin”, gunakan perintah berikut:
dockerrun -e TZ=Eropa/Berlinyour-docker-image
Perintah ini memulai kontainer dan memastikan bahwa zona waktu disetel ke Berlin, apa pun zona waktu yang digunakan sistem host
Efek dari spesifikasi zona waktu TC
Jika Anda menetapkan variabel TZ, hal ini berpengaruh:
- Waktu sistem di dalam kontainer: Semua operasi yang bergantung pada waktu di dalam kontainer didasarkan pada zona waktu yang ditentukan.
- Log dan stempel waktu: Setiap entri waktu yang dihasilkan (misalnya dalam log) adalah output dalam zona waktu yang ditentukan.
- Tugas terjadwal: Pekerjaan Cron dan tugas berbasis waktu lainnya berjalan pada waktu yang tepat di zona waktu yang ditentukan.
Daftar zona waktu yang tersedia
Docker mendukung semua zona waktu yang dikelola oleh IANA (Internet Assigned Numbers Authority). Zona waktu ini ditentukan dalam format “Wilayah/Kota”. Berikut ini adalah pilihan zona waktu yang paling sering digunakan:
- UTC (Universal Time Coordinated)
- Eropa/Berlin
- Eropa/London
- Amerika/New_York
- Amerika/Los_Angeles
- Asia/Tokyo
- Asia/Shanghai
- Australia/Sydney
- Afrika/Johannesburg
- Pasifik/Auckland
Anda dapat menampilkan daftar lengkap zona waktu yang tersedia pada sistem Linux Anda dengan perintah berikut:
daftarwaktudaftar zona waktu
Atau, Anda juga dapat menemukan daftar zona waktu IANA secara online.