Lösung für das Docker-Pull-Timeout

Lösung für das Docker-Pull-Timeout

In letzter Zeit ist das Abrufen von Docker-Images sehr instabil. Es ist langsam und es kommt häufig zu Zeitüberschreitungen.

Ziehe xlxdsj_swagger_ui (swaggerapi/swagger-ui:) …
aktuell: Abrufen von swaggerapi/swagger-ui
ba3557a56b15: Ziehen abgeschlossen
1a18b9f93d41: Ziehen abgeschlossen
38ceab6c6432: Ziehen abgeschlossen
6104f3bd82cc: Ziehen abgeschlossen
750e0e12d70c: Ziehen abgeschlossen
d7c38a871210: Ziehen abgeschlossen
cbd9bbb7c3b7: Ziehen abgeschlossen
3d6723371070: Ziehen abgeschlossen
5e5b2de4487f: Ziehen abgeschlossen
3c84c9c2d567: Ziehen abgeschlossen
9e7d57b00bb8: Ziehen abgeschlossen
5356d2f5be08: Ziehen abgeschlossen
Zusammenfassung: sha256:2a746f15dacc2f2e381b3449544b82e6c7604567f05606d957ff5b7cf7d29a47
Status: Neueres Image für swaggerapi/swagger-ui:latest heruntergeladen
Ziehe xlxdsj_swagger_editor (swaggerapi/swagger-editor:) …
FEHLER: Get https://registry-1.docker.io/v2/: net/http: Anfrage beim Warten auf Verbindung abgebrochen (Client.Timeout beim Warten auf Header überschritten)

Es gibt drei allgemeine Lösungen:

1. DNS ändern

2. Ändern Sie die Adresse des Bild-Repositorys

3. Hosts ändern

Verwenden des Socks5-Proxys

Die folgenden Vorgänge erfolgen alle in CentOS7. Bei Ubuntu ist es grundsätzlich dasselbe. macOS und Windows haben dasselbe Prinzip.

DNS ändern

>>> vim /etc/resolv.conf
Nameserver 8.8.8.8

Ändern Sie die Adresse des Bildrepositorys

>>> vim /etc/docker/daemon.json
{
 "Registrierungsspiegel": ["https://docker.mirrors.ustc.edu.cn", "https://reg-mirror.qiniu.com"]
}
>>> systemctl daemon-reload
>>> systemctl Neustart Docker

Host ändern

# Installieren Sie dig
>>> sudo yum installiere bind-utils
>>> dig @114.114.114.114 registry-1.docker.io
; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.3 <<>> @114.114.114.114 registry-1.docker.io
; (1 Server gefunden)
;; Globale Optionen: +cmd
;; Antwort erhalten:
;; ->>HEADER<<- Operationscode: QUERY, Status: NOERROR, ID: 18733
;; Flags: qr rd ra; Anfrage: 1, Antwort: 8, Autorität: 0, Zusatz: 1
;; OPT PSEUDOSEKTION:
; EDNS: Version: 0, Flags:; UDP: 512
;; FRAGENABSCHNITT:
;registry-1.docker.io. IN A
;; ANTWORT-ABSCHNITT:
registry-1.docker.io.38 IN A 54.85.56.253
registry-1.docker.io.38 IN A 35.174.73.84
registry-1.docker.io.38 IN A 23.22.155.84
registry-1.docker.io.38 IN A 18.213.137.78
registry-1.docker.io.38 IN A 107.23.149.57
registry-1.docker.io.38 IN A 52.5.11.128
registry-1.docker.io.38 IN A 52.54.232.21
registry-1.docker.io.38 IN A 52.20.56.50
;; Abfragezeit: 8 ms
;; SERVER: 114.114.114.114#53(114.114.114.114)
;; WANN: Di., 23. Feb. 2021, 09:03:18 CST
;; empfangene MSG-Größe: 177
>>> sudo vim /etc/hosts
35.174.73.84 Registrierung-1.docker.io

Verwenden des Socks5-Proxys

Wenn die vorherigen Methoden nicht gut funktionieren, sollten Sie Folgendes verwenden

Voraussetzung ist, dass ss installiert wurde

>>> vim /etc/systemd/system/docker.service.d/http-proxy.conf
[Service]
Umgebung="HTTP_PROXY=socks5://127.0.0.1:1080"
>>> systemctl daemon-reload
>>> systemctl Neustart Docker
>>> systemctl show --property=Umgebungs-Docker
Umgebung=HTTP_PROXY=socks5://127.0.0.1:1080

Ergänzung: Lösung für Docker-Pull-Image-Fehler oder Timeout, ändern Sie die Pull-Adresse in das inländische Image-Warehouse

Die Standard-Image-Pull-Adresse von Docker ist ein externes Warehouse, das eine langsame Download-Geschwindigkeit hat und diesen Fehler sogar melden kann.

Fehlerantwort vom Daemon: Get https://docker.elastic.co/v2/: net/http: TLS-Handshake-Timeout

Lösung: Ändern Sie die Datei /etc/docker/daemon.json und fügen Sie den Schlüsselwert „Registry-Mirrors“ hinzu.

Starten Sie dann Docker neu.

{
 "Registrierungsspiegel": ["https://registry.docker-cn.com"]
}

Das Obige ist meine persönliche Erfahrung. Ich hoffe, es kann Ihnen als Referenz dienen. Ich hoffe auch, dass Sie 123WORDPRESS.COM unterstützen werden. Sollten dennoch Fehler oder unvollständige Überlegungen vorliegen, freue ich mich über eine Korrektur.

Das könnte Sie auch interessieren:
  • Detaillierte Erklärung, wo das von Docker abgerufene Image gespeichert ist
  • Docker-Pull-Image und Tag-Vorgang Pull | Tag
  • Docker-Konfiguration Alibaba Cloud Image Acceleration Pull-Implementierung
  • Detaillierte Erklärung, wo die von Docker abgerufenen Bilder gespeichert werden
  • Lösen Sie das Problem, dass Docker Pull zurückgesetzt wird
  • Lösung für das Problem der langsamen Docker-Pull-Image-Geschwindigkeit
  • So lösen Sie das Problem der langsamen Docker-Pull-Image-Geschwindigkeit
  • Detaillierte Erklärung, wo die von Docker abgerufenen Bilddateien gespeichert werden
  • Detaillierte Erläuterung zum Ändern der Docker-Pull-Image-Quelle

<<:  Sie müssen wirklich die Verwendung von CSS-Variablen var() verstehen

>>:  Beispiele für die Interaktion zwischen MySQL und Python

Artikel empfehlen

Vue implementiert die Drag & Drop-Sortierfunktion der Seiten-Div-Box

vue implementiert die Drag & Drop-Sortierfunk...

WeChat-Applet + ECharts zur Realisierung eines dynamischen Aktualisierungsprozesses

Vorwort Kürzlich stieß ich auf eine Anforderung, ...

MySQL-Daten einfügen, aktualisieren und löschen Details

Inhaltsverzeichnis 1. Einfügen 2. Aktualisierung ...

React realisiert sekundäre Verknüpfung (linke und rechte Verknüpfung)

In diesem Artikel wird der spezifische Code von R...

Beispiel einer DOM-Operationstabelle (DOM erstellt Tabelle)

1. Erstellen Sie eine Tabelle mit HTML-Tags: Code...

10 tödliche semantische Fehler in der Webtypografie

<br />Dies stammt aus dem Inhalt von „Web Fr...

Vue + Element zur dynamischen Anzeige von Hintergrunddaten zu Optionen

brauchen: Implementieren Sie die dynamische Anzei...

So erstellen Sie ein einfaches Säulendiagramm mit Flex-Layout in CSS

Das Folgende ist ein Balkendiagramm im Flex-Layou...

10 Gründe, warum Linux immer beliebter wird

Linux wird von immer mehr Benutzern geliebt. Waru...

Welcher Befehl eignet sich besser für die unscharfe Suche nach Dateien in Linux?

1. Einleitung In diesem Artikel wird hauptsächlic...