559 Stimmen

Wie können Sie sich an Docker-Prozessen anhängen und von ihnen lösen?

Ich kann mich an einen Docker-Prozess anhängen, aber Strg+C funktioniert nicht, um sich davon zu lösen. exit stoppt im Grunde genommen den Prozess.

Was ist der empfohlene Ablauf, um den Prozess am Laufen zu halten, gelegentlich darauf zuzugreifen, um Änderungen vorzunehmen, und dann zu trennen?

35voto

Adi Fatol Punkte 916

Wenn nichts anderes funktioniert, öffnen Sie ein neues Terminal und dann:

$ ps aux | grep attach
Benutzername  .............. 0:00 docker attach 
Benutzername  .............. 0:00 grep --color=auto attach
$ kill -9

11voto

gXg Punkte 508

Um sich von dem Container zu lösen, halten Sie einfach Strg gedrückt und drücken P + Q.

Um sich an einen laufenden Container anzuhängen, verwenden Sie:

$ docker container attach "container_name"

9voto

Pierluigi Vernetto Punkte 1837

Ich hatte dasselbe Problem, Strg+P und Q funktionierten nicht, auch nicht Strg+C ... schließlich öffnete ich eine andere Terminal-Sitzung und führte "docker stop containerid" und "docker start containerid" aus und es hat funktioniert. Seltsam.

6voto

CenterOrbit Punkte 5892

Aktualisierung

Normalerweise habe ich `docker attach` verwendet, um zu sehen, was STDOUT anzeigt, um Containerprobleme zu beheben. Ich habe gerade `docker logs --follow 621a4334f97b` gefunden, mit dem ich das STDOUT sehen kann, während ich auch in der Lage bin, mit Strg+C davon wegzukommen, ohne den Betrieb des Containers zu beeinträchtigen! Genau das, was ich immer haben wollte.

... natürlich müssen Sie Ihre eigene Container-ID einsetzen.

Ursprüngliche Antwort

Ich wollte den Container laufen lassen, hatte aber angehängt, ohne den Container mit `-it` zu starten. Meine Lösung bestand darin, meine SSH-Verbindung stattdessen zu opfern (da ich per SSH mit der Maschine verbunden war, auf der die Container liefen). Das Beenden dieser SSH-Sitzung ließ den Container intakt, aber trennte mich davon.

4voto

ravthiru Punkte 7540

Halten Sie in der gleichen Shell die Strg-Taste gedrückt und drücken Sie dann die Tasten P und Q

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