Heim  >  Artikel  >  Betrieb und Instandhaltung  >  So lösen Sie das Problem, dass Docker nicht auf http pushen kann

So lösen Sie das Problem, dass Docker nicht auf http pushen kann

WJ
WJOriginal
2020-06-09 16:34:064424Durchsuche

So lösen Sie das Problem, dass Docker nicht auf http pushen kann

Wie kann das Problem gelöst werden, dass Docker nicht auf http pushen kann?

Systemumgebung: centos7

Docker-Version: 1.12.3 (beachten Sie die Version, es kann unterschiedliche Einstellungen für verschiedene Versionen geben)

Docker-Registrierung Version: 2.4.1

Problem:

hat die Docker-Registrierung erfolgreich installiert, http://192.168.1.100:5000/v2 in den Browser eingegeben und JSON-Daten erfolgreich zurückgegeben. Beim Pushen an die Docker-Registrierung wird Folgendes gemeldet:

[root@master sysconfig]# docker push 192.168.1.100:5000/registry:2.4.1The push refers to a repository [192.168.1.100:5000/registry]
Get https://192.168.1.100:5000/v1/_ping: http: server gave HTTP response to HTTPS client

Dieses Problem kann dadurch verursacht werden, dass der Client https verwendet und die Docker-Registrierung den https-Dienst nicht verwendet. Eine Möglichkeit, damit umzugehen, besteht darin, die Anfrage des Clients für die Adresse „192.168.1.100:5000“ in http zu ändern.

Viele Artikel lösen dieses Problem derzeit, indem sie die Docker-Konfigurationsdatei „etc/systemconfig/docker“ ändern und Docker neu starten. Es wurde jedoch festgestellt, dass Docker-Version 1.12.3 diese Datei nicht hatte. Ich habe diese Datei online erstellt und den entsprechenden Inhalt eingegeben. Ein Neustart von Docker hatte keine Auswirkung und dieser Fehler wurde trotzdem gemeldet.

Lösung:

Erstellen Sie die Datei „daemon.json“ im Verzeichnis „/etc/docker/“. Schreiben Sie in die Datei:

{ "insecure-registries":["192.168.1.100:5000"] }

Nach dem Speichern und Beenden starten Sie Docker neu. Problem gelöst:

[root@master docker]# docker push 192.168.1.100:5000/registry:2.4.1The push refers to a repository [192.168.1.100:5000/registry]
ee8e809cfde5: Pushed
ba20d499f984: Pushed
705e35f12f24: Pushed
42755cf4ee95: Pushed2.4.1: digest: sha256:b66c4af9577744ae6d32e975808230e2ff558a5d50a7968d5102a900e147f3d5 size: 1158

Windows Server 2016, die Standardinstallations-Docker-Konfigurationsdatei befindet sich in „C:ProgramDatadockerconfig“. Sie können in diesem Verzeichnis eine Datei „daemon.json“ erstellen, um dieses Problem zu lösen.

Verwandte Referenzen: Docker-Tutorial

Das obige ist der detaillierte Inhalt vonSo lösen Sie das Problem, dass Docker nicht auf http pushen kann. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn