In einem Docker-Container muss mindestens ein Prozess ausgeführt werden, damit der Container das Docker-Image (ubuntu, httpd..etc, was auch immer es ist) im Hintergrund ohne Beenden ausführt
Zum Beispiel im Ubuntu-Docker-Image,
Um einen neuen Container im Abtrennungsmodus zu erstellen (der im Hintergrund mindestens einen Prozess ausführt),
docker run -d -i -t f63181f19b2f /bin/bash
es wird einen neuen Container für dieses Bild (Ubuntu) mit der ID f63181f19b2f
erstellen. Der Container wird im abgetrennten Modus (im Hintergrund ausgeführt) ausgeführt, zu dieser Zeit wird ein kleiner Prozess tty
Bash-Shell im Hintergrund ausgeführt. Daher wird der Container weiterhin ausgeführt, bis der Bash-Shell-Prozess beendet wird.
Um den im Hintergrund laufenden Container anzuhängen, verwenden Sie
docker attach b1a0873a8647
Wenn Sie sich vom Container trennen möchten, ohne ihn zu beenden (ohne die Bash-Shell zu beenden), Sie können standardmäßig Strg+P, Q
verwenden. Dadurch wird der Container ohne Beenden verlassen (im Hintergrund laufen, was bedeutet, ohne die Bash-Shell zu beenden).
Sie können beim Anhängen an den Container einen benutzerdefinierten Befehl übergeben,
docker attach --detach-keys="Strg+S" b1a0873a8647
diesmal wird die Escape-Sequenz Strg+P, Q
nicht funktionieren. stattdessen wird Strg+S
für das Verlassen des Containers funktionieren. Sie können beliebige Tasten verwenden, z.B. (Strg-*)