Przejdź do treści
Home » Korzystanie ze specyfikacji strefy czasowej TZ w Dockerze: instrukcje i dostępne strefy czasowe

Korzystanie ze specyfikacji strefy czasowej TZ w Dockerze: instrukcje i dostępne strefy czasowe

Advertisements

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 to potężne narzędzie do izolowania aplikacji w kontenerach i uruchamiania ich niezależnie od platformy. Podczas korzystania z Dockera często ważne jest prawidłowe skonfigurowanie strefy czasowej, szczególnie w przypadku procesów zależnych od czasu. W tym artykule dowiesz się, jak używać zmiennej środowiskowej TZ w Dockerze, co ona robi i jakie strefy czasowe są dostępne.

Czym jest zmienna środowiskowa TC?

Zmienna środowiskowa TZ umożliwia ustawienie strefy czasowej dla kontenera Docker. Domyślnie kontenery Docker przyjmują strefę czasową systemu hosta. Jeśli jednak chcesz upewnić się, że twój kontener używa określonej strefy czasowej, możesz to kontrolować za pomocą zmiennej TZ.

Dlaczego konfiguracja strefy czasowej jest ważna?

Prawidłowa strefa czasowa ma kluczowe znaczenie dla:

  • Znaczniki czasu: Aplikacje generujące znaczniki czasu (np. w dziennikach lub wpisach w bazie danych) muszą generować je we właściwej strefie czasowej.
  • Zaplanowane zadania: Zadania Cron lub inne zadania oparte na czasie muszą być wykonywane we właściwym czasie lokalnym.
  • Aplikacje globalne: Jeśli Twoja aplikacja jest używana przez użytkowników w różnych strefach czasowych, ważne jest, aby czas był prawidłowo zlokalizowany.

Jak używać zmiennej środowiskowej TZ w Dockerze?

Aby określić strefę czasową kontenera Docker, ustaw zmienną środowiskową TZ podczas uruchamiania kontenera. Odbywa się to za pomocą przełącznika -e (lub --env), po którym następuje specyfikacja żądanej strefy czasowej.

Przykład: Uruchom kontener ze zdefiniowaną strefą czasową

Zakładając, że chcesz uruchomić kontener i ustawić strefę czasową na “Europa/Berlin”, użyj następującego polecenia:

    dockerrun -e TZ=Europe/Berlinyour-docker-image

To polecenie uruchamia kontener i zapewnia, że strefa czasowa jest ustawiona na Berlin, niezależnie od strefy czasowej używanej przez system hosta

Skutki specyfikacji strefy czasowej TC

Jeśli ustawisz zmienną TZ, będzie to miało wpływ:

  • Czas systemowy w kontenerze: Wszystkie operacje zależne od czasu w kontenerze są oparte na zdefiniowanej strefie czasowej.
  • Dzienniki i znaczniki czasu: Każdy wygenerowany wpis czasu (np. w dziennikach) jest wyświetlany w określonej strefie czasowej.
  • Zaplanowane zadania: Zadania Cron i inne zadania oparte na czasie są uruchamiane we właściwym czasie w określonej strefie czasowej.

Lista dostępnych stref czasowych

Docker obsługuje wszystkie strefy czasowe utrzymywane przez IANA (Internet Assigned Numbers Authority). Te strefy czasowe są określone w formacie “Region/Miasto”. Poniżej znajdziesz wybór najczęściej używanych stref czasowych:

  • UTC (uniwersalny czas koordynowany)
  • Europa/Berlin
  • Europa/Londyn
  • Ameryka/Nowy_Jork
  • Ameryka/Los_Angeles
  • Azja/Tokio
  • Azja/Szanghaj
  • Australia/Sydney
  • Afryka/Johannesburg
  • Pacyfik/Auckland

Możesz wyświetlić pełną listę dostępnych stref czasowych w systemie Linux za pomocą następującego polecenia:

 timedatectllist-timezones

Możesz również znaleźć listę stref czasowych IANA online.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Mastodon