Verwendung von dry-run mit einem befehl, der Änderungen vornehmen würde
In diesem Schritt verwenden wir das dry-run
-Flag mit einem Docker Compose-Befehl, der normalerweise Änderungen an Ihrem System vornehmen würde, wie z.B. docker-compose up
. Dies demonstriert, wie dry-run
Ihnen die geplanten Aktionen anzeigen kann, ohne tatsächlich Container oder Netzwerke zu erstellen.
Der Befehl docker-compose up
würde ohne dry-run
die angegebenen Images herunterladen (falls nicht bereits vorhanden), Netzwerke erstellen und Container basierend auf Ihrer docker-compose.yaml
-Datei starten. Durch Hinzufügen des dry-run
-Flags können wir die Schritte sehen, die ausgeführt würden, ohne sie tatsächlich durchzuführen.
Stellen Sie zunächst sicher, dass Sie sich im richtigen Verzeichnis befinden:
cd ~/project/my-compose-app
Führen Sie nun den Befehl docker-compose up --dry-run
aus.
docker-compose up --dry-run
Sie sehen eine Ausgabe, die die Aktionen anzeigt, die Docker Compose ausführen würde. Für unsere einfache docker-compose.yaml
könnte die Ausgabe etwa so aussehen:
Would create network "my-compose-app_default"
Would create service "web"
Would pull image "nginx:latest"
Would create container "my-compose-app-web-1"
Diese Ausgabe zeigt deutlich, dass Docker Compose beabsichtigt:
- Ein Standard-Netzwerk namens
my-compose-app_default
zu erstellen
- Einen Service namens
web
zu erstellen
- Das Image
nginx:latest
zu pullen (falls es nicht bereits lokal verfügbar ist)
- Einen Container namens
my-compose-app-web-1
für den web
-Service zu erstellen
Beachten Sie, dass keine dieser Aktionen tatsächlich durchgeführt wird. Es wird kein Netzwerk erstellt, kein Image gepullt und kein Container gestartet. Das dry-run
-Flag verhindert jegliche tatsächliche Änderung an Ihrer Docker-Umgebung.
Dies ist äußerst nützlich für:
- Vorschau von Änderungen: Vor dem Deployment einer komplexen Anwendung können Sie
dry-run
verwenden, um genau zu sehen, was Docker Compose tun wird
- Fehlerbehebung: Wenn ein
docker-compose up
-Befehl fehlschlägt, kann dry-run
helfen, die ersten Schritte zu verstehen und potenzielle Probleme in Ihrer Konfiguration zu identifizieren
- Lernzwecke: Es ermöglicht das Experimentieren mit verschiedenen
docker-compose.yaml
-Konfigurationen und das Sehen ihrer Auswirkungen ohne Systemänderungen
Sie können das dry-run
-Flag auch mit anderen Docker Compose-Befehlen wie down
, start
, stop
und rm
verwenden, um zu sehen, welche Ressourcen betroffen wären.