Nibelungenstraße 7 |  95444 Bayreuth | Germany   
+49 921 788989 99
NF AI
NF Compose
Karriere
Über uns
November 17, 2022

Docker-stack-deploy: Hintergrund und Verwendung

Seit seiner Veröffentlichung im Jahr 2013 hat sich Docker als zuverlässige offene Plattform für Entwickler erwiesen und die gesamte Softwarebranche revolutioniert. Die Zugänglichkeit für Entwickler und die Möglichkeit der schnellen Bereitstellung machten Docker zu einer der beliebtesten Plattformen mit über 3 Millionen Installationen und Zehntausenden von Unternehmen, die sie nutzen.

Auch wenn Kubernetes in aller Munde ist, ist der Docker Swarm Mode immer noch eine gute Wahl für Deployments - vor allem in kleineren Umgebungen. Der Grund dafür ist seine Einfachheit.

Wir bei Neuroforge glauben, dass die Vereinfachung des Lebens der Community allen zugute kommt. Da der Docker Swarm Mode einige kleinere Schwachstellen aufweist, haben wir uns entschlossen, einen Wrapper zu entwickeln, das Docker automatisierter und noch benutzerfreundlicher macht.

Darf ich vorstellen: docker-stack-deploy für Docker Swarm

Docker Stack-Dateien sind eine großartige Möglichkeit, um Ihre Bereitstellungen zu organisieren. Das Problem ist jedoch, dass Docker Swarm keine Änderungen an Secrets und Configs zulässt. Das bedeutet, dass Sie die Configs/Secrets selbst manuell rotieren müssen.

docker-stack-deploy ist ein kleines Python-Skript, das den eigentlichen docker stack deploy Befehl kapselt und alle Stack-Dateien in den Argumenten abfängt, indem es sie so umschreibt, dass Configs und Secrets automatisch rotiert werden, wenn sich der Inhalt der referenzierten Dateien geändert hat.

Um es zu verwenden, schreiben Sie einfach statt docker stack deploy:

docker-sdp stack deploy

FAQ über docker-stack-deploy

1) Was war die Idee hinter docker-stack-deploy?

Dieses Tool ist eine Schicht um docker stack deploy, die uns bei der Automatisierung einige Kopfschmerzen bereitet hat. Wir bauen einige unserer internen Tools und App-Deployments auf Docker Swarm auf, da die Einstiegshürde sehr niedrig ist. Die wichtigsten Clustering-Konzepte sind bei allen großen Container-Orchestrierern gleich. Bei der Verwendung unseres Setups haben wir auch ältere Tutorials und Versionen für den Docker Swarm-Modus genommen und sie auf GitHub modernisiert. Sehen Sie zum Beispiel unser modernisiertes Swarmprom für die Clusterüberwachung hier: https://github.com/neuroforgede/swarmsible-stacks/tree/main/02_monitoring

2) Gibt es eine andere Lösung?

Eine weitere clevere Lösung, die die Leute entwickelt haben, ist das Anhängen des Hashcodes der secret/config über eine env var in der Stack-Datei. Dies erfordert jedoch, dass das Deployment-Skript manuell in einen Prozess verpackt wird, der diesen Hash erzeugt. Mit docker-stack-deploy ist dies nicht mehr erforderlich.

3) Unterstützt es mehrere Stack-Dateien?

Sicher! Es unterstützt auch mehrere Stack-Dateien und schreibt alle an die Kommandozeile übergebenen Dateien neu.

DatenschutzerklärungImpressum
de_DEGerman
Cookie Consent Banner by Real Cookie Banner linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram