Dockerのrestartの挙動を確認してみる(補足)
Dockerのrestartの挙動を確認してみる https://yk5656.hatenablog.com/entry/20201122/1605970800
の補足
すぐ終了するコマンドをrestartオプションを付けずに実行すると、
$ docker run --name hoge1 ubuntu echo hogehoge
すぐ終了するが、
$ docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 56a08699b69d ubuntu "echo hogehoge" 6 seconds ago Exited (0) 5 seconds ago hoge1 $ docker logs hoge1 hogehoge
restartオプションを付けて実行すると、
$ docker run --name hoge2 --restart=unless-stopped ubuntu echo hogehoge
Restartingし続ける。
$ docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES d0bd94317fc0 ubuntu "echo hogehoge" 5 seconds ago Restarting (0) Less than a second ago hoge2 ・・・ $ docker logs hoge2 hogehoge hogehoge hogehoge hogehoge hogehoge hogehoge hogehoge
ちなみに、runのrmオプションとrestartオプションは同時には指定できないみたい。
$ docker run --name hoge3 --rm --restart=unless-stopped ubuntu echo hogehoge docker: Conflicting options: --restart and --rm. See 'docker run --help'.
また、docker-composeのrunで実行した場合は、
$ vi docker-compose.yml
version: '3' services: hoge-srv: image: ubuntu restart: always
$ docker-compose run --name hoge4 hoge-srv echo hogehoge
すぐに終了し、restartしない。
(この辺の仕様はまだよく分かっていない)
$ docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 8d2767575d0a ubuntu "echo hogehoge" 4 seconds ago Exited (0) 3 seconds ago hoge4 ・・・