コンテナを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
 $
  • その場合、-iオプションを一緒に指定する

参考


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS

Last-modified: 2020-09-22 (火) 00:32:58