Der Bindungsmontageort in der Docker-Registrierung führt zu Zeitüberschreitungen

271
bingbomboom

Ich verwende Docker auf einem Mac, und ich habe Probleme mit dem Bindemount eines Standorts auf einem Registrierungsserver. Ich hatte gehofft, dass hier jemand helfen könnte.

Zum Glück ist das Thema ziemlich einfach. Angenommen, ich möchte eine einfache, unsichere Docker-Registry ausführen. Zuerst stelle ich sicher, dass die entsprechende IP-Adresse in der Liste "Unsichere Registries" eingetragen ist. Laut Dokumentation laufe ich danndocker run -d --restart=always --name registry -e REGISTRY_HTTP_ADDR=0.0.0.0:5000 -p 5000:5000 registry:2

Wenn ich das mache, funktioniert die Registry "einfach". Ich kann ein Bild als markieren 10.0.3.59:5000/imgnameund normal drücken und ziehen.

Ich möchte jedoch, dass sich die Daten der Registrierung an einem bestimmten Ort auf dem Host-System befinden, beispielsweise /mnt/registry. Ich gehe zu den Docker-Einstellungen, stelle sicher, dass die Freigabe für den mntOrdner aktiviert ist, und entferne alte Bilder und Container

Nach der Dokumentation laufe ich weiter docker run -d --restart=always --name registry -v storage:/var/lib/registry/ -e REGISTRY_HTTP_ADDR=0.0.0.0:5000 -p 5000:5000 registry:2. Wenn ich jetzt aber versuche, jetzt ein zu tun docker push 10.0.3.59:5000/imgname, erhalte ich die folgenden Meldungen

The push refers to a repository [10.0.3.52:5000/cropspokyimage] 74146a4cf164: Retrying in 9 seconds 6c45ce1e774e: Retrying in 9 seconds  0914c5636fb4: Retrying in 9 seconds f859b8ada191: Retrying in 9 seconds b2d02a400fe3: Retrying in 9 seconds fc0e50be166d: Waiting a8cfe888247e: Waiting e745d991dded: Waiting 7b08edaa4533: Waiting 01b4d034aab5: Waiting d0c686d0df68: Waiting 9deb78b26d56: Waiting 0566c118947e: Waiting 6f9cf951edf5: Waiting 182d2a55830d: Waiting 5a4c2c9a24fc: Preparing cb11ba605400: Waiting 

Nach ungefähr einer Minute Wartezeit druckt er schließlich den folgenden Fehler und bricht ab received unexpected HTTP status: 500 Internal Server Error

Dies lässt mich natürlich nicht mit der gewünschten Funktionalität auskommen. Kann mir jemand helfen, eine Lösung zu finden?

0

1 Antwort auf die Frage

0
bingbomboom

Es stellte sich als Berechtigungsfehler heraus, bei dem Docker nicht die Berechtigung hatte, in das angehängte Verzeichnis zu schreiben (führen Sie eine chmod 777Korrektur durch).

Der docker logBefehl war ein treuer Freund, der mir half (gut, mein Vorgesetzter), den Fehler bis zu seiner Quelle zu finden