Ich habe eine private Registrierung erstellt, Curl xx.xx.xx.xx: 5000 ist in Ordnung. Ich schiebe ein Bild in die private Docker-Registrierung, indem ich Folgendes mache:
docker push xx.xx.xx.xx:5000/centos
es gibt zurück:
http://xx.xx.xx.xx:5000/v1/repositories/centos/tags/latest
Die Frage ist, wie man alle Bilder aus dem Registrierungs-Web erhält oder was auch immer befiehlt. Ich kann keine Informationen aus der Docker-Registrierungs-API finden. hilft jemand? :) :)
docker
docker-registry
edwardsbean
quelle
quelle
Antworten:
Ab Version 0.7.0 der privaten Registrierung können Sie Folgendes tun:
und Sie erhalten eine json-Nutzlast:
Um hier mehr Hintergrundinformationen zu geben, habe ich meine Registrierung gestartet:
quelle
search
curl -X GET http://localhost:5000/v1/search
kann alle Bilder auflistenhttp://localhost:5000/v2/_catalog
docs.docker.com/registry/spec/apiJetzt können Sie vom Docker-Client aus einfach Ihre private Registrierung direkt durchsuchen, ohne die HTTP-APIs oder zusätzliche Tools zu verwenden:
zB Suche nach Centos Bild:
docker search localhost:5000/centos
quelle
Ich weiß also, dass sich dieses Feld schnell ändert, aber (Stand: 08.09.2015) habe ich in der Docker Registry HTTP API V2 Folgendes gefunden :
Listing Repositories ( Link )
Auflisten von Bild-Tags ( Link )
Basierend darauf hat das Folgende für mich in einer lokalen Registrierung funktioniert (Registrierung: 2 IMAGE ID 1e847b14150e365a95d76a9cc6b71cd67ca89905e3a0400fa44381ecf00890e1 erstellt am 2015-08-25T07: 55: 17.072):
quelle
Derzeit gibt es keine Suchunterstützung für Docker Registry v2 .
Es gab einen langjährigen Thread zu diesem Thema . Der aktuelle Plan sieht vor, die Suche mit einer Erweiterung am Ende zu unterstützen, die ab Version 2.1 bereit sein sollte .
Als Abhilfe , führen Sie den folgenden auf dem Computer , auf dem Sie Ihre Registrierung v2 ausgeführt wird :
Die Bilder befinden sich in Unterverzeichnissen, die ihrem Namespace entsprechen, z
jwilder/nginx-proxy
quelle
Konnte alles in meiner privaten Registrierung zurückbekommen, indem ich nur nach 'Bibliothek' suchte:
Rückgabe (zB):
quelle
Error response from daemon: Unexpected status code 404
, was ist los?curl --insecure -u "test:password" https://myregistrydomain.com:5000/v2/_catalog
Listen Sie alle Bilder auf
Listen Sie Bilder wie 'vcs' auf
quelle
Ich habe das atc- / docker-registry-web-Projekt installiert, das mir die Benutzeroberfläche bietet und nach meiner privaten Registrierung sucht. https://github.com/atc-/docker-registry-web
Es ist dockerisiert und Sie können es einfach ausführen
und überprüfen Sie den Inhalt, indem Sie zu navigieren
registry_ui_host.name:8080
quelle
Derzeit gibt es bei AFAIK keine einfache Möglichkeit, dies zu tun, da diese Informationen nach Index gespeichert werden sollten, über den die private Registrierung nicht verfügt. Abhängig davon, wie Sie die Registrierung gestartet haben, haben Sie zwei Möglichkeiten:
docker diff <id_of_registry_container>
sollten Sie Informationen über Änderungen in Container-Fs erhalten. Alle Push-Images sollten sich irgendwo in / tmp / registry / repositories / befinden.Wenn Sie "centos" als Namen verwendet haben, sollte sich dieser in / tmp / registry / repositories / library / centos befinden. Dieser Ordner enthält Textdateien, die die Bildstruktur beschreiben. Die tatsächlichen Daten befinden sich in / tmp / registry / images /.
quelle
/v1/search
API-Methode in der Registrierung, die jedoch ein Index-Backend erfordert. Es gibt eine grundlegende Indeximplementierung im privaten Registrierungscode ( github.com/dotcloud/docker-registry/blob/master/docker_registry/… ), die jedoch nur grundlegende Funktionen im Standalone-Modus bereitstellt. Vor ein paar Tagen habe ich Folgendes gefunden: github.com/ekristen/docker-index, aber ich hatte keine Zeit zum Testen.Ändern der Antwort von @mre, um die Liste nur mit einem Befehl abzurufen (gültig mindestens für Docker Registry v2).
quelle
Eine andere Methode in einer Zeile (ersetzen Sie bei Bedarf Ihren tatsächlichen Pfad / Ihre Ports).
Beispiel: Angenommen, eine generische Registrierung: 2.0 wird gestartet. Der ausgeführte Registrierungscontainer verfügt über eine Protokolldatei, die Bilder und Tag-Namen enthält. Ich extrapoliere die Daten folgendermaßen:
Möglicherweise müssen Sie die Schnittwerte anpassen, um die gewünschte Ausgabe zu erhalten.
quelle