Meine Docker-Images basieren auf einem Jenkins CI-Server und werden in unsere private Docker-Registrierung übertragen. Mein Ziel ist es, Umgebungen mit Docker-Compose bereitzustellen, die immer den ursprünglich erstellten Status der Images starten.
Ich verwende derzeit Docker-Compose 1.3.2 sowie 1.4.0 auf verschiedenen Computern, aber wir haben zuvor auch ältere Versionen verwendet.
Ich habe immer die docker-compose pull && docker-compose up -d
Befehle verwendet, um die neuen Bilder aus der Registrierung abzurufen und sie zu starten. Ich glaube, mein bevorzugtes Verhalten funktionierte bis zu einem bestimmten Zeitpunkt wie erwartet, aber seitdem wurden docker-compose up
zuvor gestoppte Container erneut ausgeführt, anstatt jedes Mal die ursprünglich erstellten Images zu starten.
Gibt es eine Möglichkeit, dieses Verhalten loszuwerden? Könnte dies eine sein, die in der Konfigurationsdatei docker-compose.yml verkabelt ist, um nicht bei jedem Aufruf etwas in der Befehlszeile "nicht zu vergessen"?
ps. Ich würde nicht nur einen Weg finden, mein Ziel zu erreichen, sondern auch gerne etwas mehr über den Hintergrund dieses Verhaltens erfahren. Ich denke, die Grundidee von Docker ist es, eine unveränderliche Infrastruktur aufzubauen. Das derzeitige Verhalten von Docker-Compose scheint einfach mit diesem Ansatz in Konflikt zu geraten. Oder vermisse ich hier einige Punkte?