401 Stimmen

Wie man einen Docker-Container fortsetzt, der beendet wurde

Betrachten Sie:

docker run -it centos /bin/bash

Ich habe <strong>Strg</strong>+<strong>D</strong> gedrückt, um es zu beenden.

Ich möchte weiterhin diesen Container ausführen, aber ich habe festgestellt, dass ich es nicht kann.

Die einzige Methode ist

docker commit `docker ps -q -l` my_image
docker run -it my_image /bin/bash

Habe ich recht? Gibt es eine bessere Methode? (Ich benutze docker 0.8.0.)

2voto

vahid sabet Punkte 315

Führen Sie Ihren Container mit dem --privileged-Flag aus.

docker run -it --privileged ...

2voto

Vinay Punkte 21

Schritte, um Ihre beendeten Container zu überprüfen und fortzusetzen

  1. Führen Sie den folgenden Befehl aus, um alle Containerdienste sowohl laufende als auch gestoppte auf anzuzeigen. Die Option -a wird verwendet, um auch die gestoppten Container anzuzeigen

     docker ps -a
  2. Starten Sie dann den Docker-Container entweder über die container_id oder die Container-Tag-Namen

     docker start  oder

0voto

docker start `docker ps -a | awk '{print $1}'`

Dies wird alle Container starten, die sich im Zustand 'Exited' befinden

0voto

burnsac Punkte 21

Für diejenigen, die hier ab 2021 und später kommen, wird der folgende Befehl das tun, was die akzeptierte Antwort in einer Zeile tun wird.

$ docker start -ai $(docker ps -q -l)

0voto

PHZ.fi-Pharazon Punkte 904

In meinem Fall wird der Docker-Container sauber beendet, wenn ich ihn starte, daher hat keines der oben genannten Methoden funktioniert. Was ich brauchte, war eine Möglichkeit, den auszuführenden Befehl zu ändern.

Mit Docker-Compose konnte ich den Befehl ändern, indem ich Folgendes ausführte:

docker-compose run  bash

z.B.

docker-compose run app bash

Achtung! Dadurch wird tatsächlich der Container neu erstellt, sodass der Befehl nicht auf der vorherigen Instanz ausgeführt wird.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X