Lösen Sie das Problem des 8-Stunden-Unterschieds zwischen Docker-Container und Host-Computer

Lösen Sie das Problem des 8-Stunden-Unterschieds zwischen Docker-Container und Host-Computer

Bei der Verwendung von Docker-Compose für die Bereitstellung werden die Ausgabeprotokolle und zugehörigen Ereignisse überprüft und ausgegeben, was zu einer 8-stündigen Differenz zwischen den Ereignissen und der Realität führt.

Fehlerbehebung:

1. Überprüfen Sie die Hostzeit:

# Uhrzeit und Datum anzeigen
Mittwoch, 29. September 2021, 11:12:44 CST
# Überprüfen Sie das Zeitzonendatum -R
Mi, 29. Sept. 2021 11:13:34 +0800

2. Geben Sie den Container ein, um die Zeit anzuzeigen

# Alle Container anzeigen docker ps -a
# Geben Sie den Container ein docker eec -it [Container-ID] /bin/bash
# Uhrzeit und Datum anzeigen

Zu diesem Zeitpunkt ist die Hostzeit dieselbe wie die Zeit des Docker-Containers. Nachdem ich Baidu durchsucht hatte, wurde mir schließlich klar, dass es sich um ein Zeitzonenproblem handelte.

Linux-Zeit:

Behälterzeit:

Ursache: Für den Hostcomputer ist eine Zeitzone eingestellt, für den Docker-Container jedoch nicht. Dadurch besteht ein Zeitunterschied von 8 Stunden zwischen den beiden Computern.

CST sollte sich beziehen auf (China Shanghai Time, Eastern Time Zone 8)
UTC sollte sich beziehen auf (Koordinierte Weltzeit, Standardzeit)
Daher müsste der Unterschied zwischen diesen beiden Zeiten eigentlich 8 Stunden betragen.

Daher müssen die Zeitzonen der beiden Länder vereinheitlicht werden.

Lösung:

1. Docker-Compose-Konfigurationsvolume einbinden

Bände:
      - /usr/share/zoneinfo/Asia/Shanghai:/etc/localtime

2.Dockerfile führt den Befehl aus und gibt die entsprechende Zeitzone an timezone aus

RUN echo "Asia/shanghai" > /etc/zeitzone
 
RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

3. Löschen Sie den Container und führen Sie ihn erneut aus

#Docker rm [Container-ID] löschen
# Starten Sie docker-compose -f [Dateiname] up -d

Zusammenfassung: Der 2-stündige Zeitunterschied wird durch das /etc/timezone-Problem im Container verursacht. Sie können die entsprechende Zeitzone einstellen.

Dies ist das Ende dieses Artikels über den 8-Stunden-Unterschied zwischen Docker-Container und Host-Rechner. Weitere relevante Inhalte zu Docker-Containern und Host-Rechnern finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird!

Das könnte Sie auch interessieren:
  • Docker ermöglicht den nahtlosen Aufruf von Shell-Befehlen zwischen Container und Host
  • Lösung für den Docker-Container, der keine Schreibberechtigung für das Host-Verzeichnis hat
  • Lösung, wenn der Docker-Container nicht auf den Host-Port zugreifen kann
  • Führen Sie die Shell oder das Programm im Docker-Container auf dem Host aus.
  • Aufrufen und Ausführen von Host-Docker-Operationen im Docker-Container
  • Detaillierte Erläuterung zur Lösung des Problems, dass der Docker-Container nicht über IP auf den Hostcomputer zugreifen kann
  • So verwenden Sie einen Docker-Container für den Zugriff auf das Host-Netzwerk

<<:  Verwenden Sie thead, tfoot und tbody, um eine Tabelle zu erstellen

>>:  Einführung in neue ECMAscript-Objektfunktionen

Artikel empfehlen

30 Tipps zum Schreiben von HTML-Code

1. HTML-Tags immer schließen Im Quellcode der vor...

Beispielcode zum Konvertieren des Mysql-Abfrageergebnissatzes in JSON-Daten

Mysql konvertiert Abfrageergebnissatz in JSON-Dat...

Detaillierte Erklärung von Javascript-Closures und -Anwendungen

Inhaltsverzeichnis Vorwort 1. Was ist ein Abschlu...

Implementierungscode zur Installation von vsftpd in Ubuntu 18.04

Installieren Sie vsftpd $ sudo apt-get installier...

Einige gängige CSS-Layouts (Zusammenfassung)

Zusammenfassung In diesem Artikel werden die folg...

Detaillierte Erklärung der JS-Array-Methoden

Inhaltsverzeichnis 1. Das ursprüngliche Array wir...

So löschen Sie die Validierungsaufforderung bei der Elementformularvalidierung

Inhaltsverzeichnis Problemszenario: Lösung: 1. Üb...

Eine großartige Sammlung von Lernressourcen zu Webstandards

Diese Spezifikationen sollen die Veröffentlichung ...

Empfehlen Sie mehrere MySQL-bezogene Tools

Vorwort: Mit der kontinuierlichen Entwicklung der...

So wählen Sie das Format bei der Verwendung von Binlog in MySQL

Inhaltsverzeichnis 1. Drei Binlog-Modi 1.Anweisun...

So beheben Sie den MySQL-Fehler 10061

In diesem Artikel erfahren Sie die Lösung für das...