コンテナをexitさせない
普通にdocker runするとすぐにexitする
$ docker run ubuntu
$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
60ecab0a614a ubuntu "/bin/bash" 10 seconds ago Exited (0) 9 seconds ago dazzling_hoppe
デタッチモード(-d)でdocker runして無限ループを実行する
$ docker run -d ubuntu /bin/sh -c "while true; do sleep 100; done"
abc1236e495aa8bd8a5033cc9408cc0097eb34819a3b5df723835b116be54715
$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
abc1236e495a ubuntu "/bin/sh -c 'while t…" 4 seconds ago Up 3 seconds thirsty_greider
デタッチモード(-d)とフォアグラウンドモード(-t)を使ってdocker runする
$ docker run -d -t ubuntu
abc12345bc9d86d2fd197b66436efc5d0b8c6b7457345e68d9d3f4e916db05f6
$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
abc12345bc9d ubuntu "/bin/bash" 10 seconds ago Up 10 seconds amazing_tesla
フォアグラウンドモード オプション
-a=[] : Attach to `STDIN`, `STDOUT` and/or `STDERR`
-t : Allocate a pseudo-tty
--sig-proxy=true: Proxy all received signals to the process (non-TTY mode only)
-i : Keep STDIN open even if not attached
フォアグラウンドモード(-t)だけを使ってdocker runすると戻ってこれなくなる
$ docker run -t ubuntu
root@1f1f23ebec6a:/# exit
^C^C
root@1f1f23ebec6a:/# ^C^C
- -tだけ使うexitしようと思ってもホストのOSに戻ってこれなくなる
$ docker run -it ubuntu
root@c0430e1e8e53:/# exit
exit
$
参考