2014-09-24 7 views
6

Ich brauche einige Tipps zum Einrichten einer "Remote-Docker-Registrierung".Einrichten einer privaten Docker-Remote-Registrierung

README.md auf Docker-Registry vor allem auf private Registry auf dem gleichen Host laufen, legt nicht fest, wie andere Maschinen können remote zugreifen (oder vielleicht zu komplex zu verstehen).

Bisher fand ich diese Themen:

Docker: Issue with pulling from a private registry from another server (.? Noch einen offenen Faden, keine Lösung angeboten Ein weitere Diskussion über Github Hinweis auf Proxy gibt, aber wie funktioniert das)

Create a remote private registry (Vielleicht am nächsten zu dem, was ich suche, aber welchen Befehl brauche ich, um auf die Registrierung von anderen Maschinen zugreifen?)

How to use your own registry (Auch dies konzentriert sich auf das Ausführen der Registrierung auf dem gleichen Host. Es erwähnt ru nning auf Port 443 oder 80 für andere Maschinen zugreifen, aber mehr Details benötigen!)

Running von Hinweisen, jede Eingabe sehr geschätzt!

Antwort

5

konnte ich eine entfernte private Registrierung unter Bezugnahme auf diese einzurichten: Remote access to a private docker-registry

Schritte:

  1. auf Registry-Host,
  2. Auf Client-Host docker run -p 5000:5000 registry laufen, starten Docker Service docker -d --insecure-registry 10.11.12.0:5000 (Ersetzen Sie 10.11.12.0 durch Ihre eigene Registrierungs-IP, und Sie möchten den Prozess möglicherweise so dämonisieren, dass er weiter ausgeführt wird, nachdem die Shell geschlossen wurde.)

Bearbeiten: Alternativ können Sie Docker's Init-Skript bearbeiten (/ etc/sysconfig/docker für RHEL/CentOS,/var/lib/docker für Ubuntu/Debian). Fügen Sie diese Zeile other_args="--insecure-registry 10.11.12.0:5000" hinzu, dann tun Sie eine service docker restart. Dies ist eine empfohlene Methode, da sie den Docker-Prozess dämonisiert. Jetzt

, versuchen Sie, ob es funktioniert:

  1. In Client herunterladen ein Busybox Bild docker pull busybox
  2. gibt einen neuen Tag docker tag busybox 10.11.12.0:5000/busybox
  3. Push it docker push 10.11.12.0:5000/busybox
  4. überprüft Push docker search 10.11.12.0:5000/busybox auf Registrierungs
  5. Entfernen Sie alle Bilder und ziehen Sie es aus Ihrer Registry docker rmi busybox 10.11.12.0:5000:busyboxdocker pull 10.11.12.0:5000:busybox
  6. Run docker images sollte das Bild, das Sie gerade aus Ihrer eigenen privaten Remote-Registrierung gezogen haben.
+0

Woher kommt 10.11.12.0:5000? – Adrian

+0

@Adrian, das ist nur eine Dummy-IP-Adresse. Sie sollten Ihre eigene IP-Adresse verwenden. Sie finden es mit 'ifconfig' und Adresse in' eth0' –

2

ich verwenden private Registrierung in der nächsten Art und Weise:

  • Es hat FQDN: docker.mycompany.com
  • Alle Bilder, die ich habe Namen erstellen: docker.mycompany.com/image1, Docker .meine Firma.com/image2, etc

Danach alles funktioniert reibungslos:

  • Push-Bild-Registrierung:

    Docker Push docker.mycompany.com/image1

  • Pull und Bildlauf:

    docker run docker.mycompany.com/image2

+0

Ja, FQDN rockt. Ab jetzt versuche ich [Docker Registry UI] (https://github.com/atc-/docker-registry-web) Bilder zu verwalten (Liste, Löschen, etc). Der nächste Schritt ist, [Nginx] (https://www.youtube.com/watch?v=FJrs0Ar9asY) für Proxy und Authentifizierung auszuprobieren. Bearbeiten: hinzugefügte Links –

Verwandte Themen