2017-08-08 2 views
1

Ich verwende den Befehl docker-compose, um mehrere Container auszuführen. Das Problem ist, dass mein Docker-Compose einige Bilder aus dem öffentlichen Repository und einige aus einem privaten Repository abrufen muss. Ich plane, alle erforderlichen Bilder in das private Repository zu pushen, aber wie kann ich docker-compose die Bilder aus dem privaten Repository ziehen lassen?Benutzer-Andockfenster zum Erstellen von Bildern aus dem privaten Repository

Kurz -> Wie man ein eigenes Repository zeigen, wenn die Bilder nur zur Verfügung steht dort

+0

Welche Registry verwenden Sie? – Serey

+0

wir verwenden jfrog – utkarsh31

+0

Der Zugriff auf ein privates Image sollte mit Ausnahme des Authentifizierungsteils dem eines öffentlichen Image entsprechen. Zum Beispiel sollte Ihr Dockerfile-Basisbild immer noch so aussehen: 'FROM private/repo: tag' und sollte in Docker Compose gleich sein. Docker Hub und Amazon ECR können über ihre CLI zur Authentifizierung verwendet werden. In Ihrem Fall kann ich Sie nur auf die Registrierungsseite von JFrog verweisen: [Klicken Sie hier] (https://www.jfrog.com/confluence/display/RTF/ Docker + Registry) – Serey

Antwort

5

Verwenden docker login Befehl. (Official doc)
Geben Sie Ihre Anmeldeinformationen ein, und dann können Sie nur private Bilder abrufen, wenn Sie Zugriff haben.

Wenn Sie sich in einer selbst gehosteten Registrierung anmelden möchten, können Sie dies angeben, indem Sie den Servernamen hinzufügen.

docker login localhost:8080 

Dank @herm's Kommentar, wenn Sie wollen Schwarm verwenden, zu verwenden: --with-registry-auth Option. Persönlich verwende ich diesen Befehl:

docker stack deploy --with-registry-auth --compose-file dev.compose.yml myProjectName 
+0

Danke es funktionierte – utkarsh31

+2

Fyi: wenn Docker Stack in einem Schwarm deploy die Registry-Informationen mit der Option --with-register-auth weiterleiten an andere Knoten. – herm

+0

thk @herm. Ich habe aktualisiert. –

Verwandte Themen