Wenn Sie es in mehreren, einfach zu merkenden Befehlen ausführen möchten:
- list stopped containers:
docker ps -a
- Kopieren Sie den Namen oder die Container-ID des Containers, mit dem Sie sich verbinden möchten, und starten Sie den Container mit:
docker start -i
Das Flag -i
sagt Docker, dass es an die Standardeingabe des Containers angeschlossen werden soll.
Wenn der Container nicht mit einer interaktiven Shell gestartet wurde, mit der Sie eine Verbindung herstellen können, müssen Sie dies tun, um eine Shell auszuführen:
docker start
docker exec -it /bin/sh
Das /bin/sh
ist die Shell, die normalerweise in alpine-basierten Images verfügbar ist.
Wenn Sie Probleme haben, dass der Container sofort beendet wird, wenn Sie ihn wie oben starten, können Sie ihn mit einer interaktiven Shell erneut ausführen mit folgendem Befehl. Hier benötigen Sie den Namen des Images, nicht den des Containers. Da ein Neustart nicht funktioniert hat, ist der einzige Weg zur Fehlerbehebung, diesen zu löschen und erneut auszuführen. Sie werden in eine Shell gesetzt, in der Sie den CMD aus dem Dockerfile ausprobieren können, um seine Ausgabe zu sehen, oder um zu debuggen, warum er sofort beendet wird.
docker rm
docker run -it --entrypoint /bin/sh -s