TL; DR Grundsätzlich bin ich für diese Suche:Docker Bild Push über SSH (verteilt)
docker push myimage ssh://myvps01.vpsprovider.net/
ich versagt die Gründe für ganze Docker Hub/Registry Sache zu erreichen. Ich weiß, dass ich eine private Registrierung ausführen kann, aber dafür muss ich die Infrastruktur einrichten, um tatsächlich einen Server zu betreiben.
Ich habe einen kleinen Einblick in die Funktionsweise von Docker (zumindest das Dateisystem) genommen, und es sieht so aus, als wären Docker Bildebenen mehr oder weniger Tarballs mit einigen aufwendigen Dateibenennungen. Ich denke naiv, dass es nicht unmöglich wäre, ein einfaches Python-Skript zu erstellen, um Push/Pull zu verteilen, aber natürlich habe ich es nicht versucht, deshalb stelle ich diese Frage.
Gibt es irgendwelche technischen Gründe, warum Docker nicht einfach verteilen (server-less) push/pull, wie Git oder Mercurial?
Ich denke, das wäre eine enorme Hilfe, da ich einfach die Bilder, die ich auf meinem Laptop erstellt habe, direkt auf die App-Server schieben kann, anstatt zuerst auf einen Repo-Server zu drücken und dann von den App-Servern zu ziehen. Oder habe ich gerade das Konzept missverstanden und das Registry ist ein wirklich essentielles Feature, das ich unbedingt brauche?
EDIT Einige Kontext, der hoffentlich erklärt, warum ich das wollen, sollten Sie das folgende Szenario:
- Entwicklung, auf meinem Laptop (OSX getan Testen, laufen Docker Maschine, mit Docker-komponieren für Dienstleistungen zu definieren und Abhängigkeiten)
- Deploy zu einer Live-Umgebung mit Hilfe eines Skripts (selbstgeschriebene, bash, wenig Abhängigkeiten von dev-Maschine, im Grunde nur Docker Maschine)
- Implementierung auf einen neuen VPS mit sehr wenigen Abhängigkeiten außer SSH-Zugriff und Docker Daemon.
- keine „permanente“ Dienste überall läuft, dh speziell wollen keinen permanent laufenden Registry Host I (vor allem nicht für alle zugänglich sind die VPS-Instanzen, obwohl das wahrscheinlich mit einigen cleveren SSH-Tunneling gelöst werden könnte)
Die derzeit beste Lösung besteht darin, den Docker-Computer zu verwenden, um auf den VPS-Server zu verweisen und ihn neu zu erstellen, aber die Bereitstellung verlangsamt sich, da ich den Container jedes Mal aus der Quelle erstellen muss.
Ich weiß, über Last zugreifen möchte und speichern, aber der ganze Punkt wäre nur die Schichten klug zu sein und Schieben/Ziehen, die sich unterscheiden. – Krumelur