本記事はDocker ver24.0.7の環境で確認しています。
このコマンドは、起動中のコンテナを停止することができます。
コンテナ名をスペース区切りで複数指定することで、指定したコンテナを一度に停止することが可能です。
docker stopコマンドのフォーマットとオプション
フォーマット
docker stop [オプション] [コンテナ] [コンテナ...]
主なオプション一覧
オプション | 概説 |
---|---|
-t | 強制終了処理が開始されるまでの時間(単位は秒) を指定する。 デフォルトは10秒。 |
コマンド例
$ docker stop testvm
$ docker stop -t 2 testvm
docker stopコマンドの主な使い方
以下で実例をまじえたコマンドの使い方を解説していきたいと思います。
基本事項の解説
指定したコンテナを停止することができます。
冒頭でふれましたとおり、スペース区切りで複数のコンテナを指定しますと、一度に複数のコンテナを停止することが可能です。
複数停止させる場合は、左から順番に停止されます。その際、1つ停止したら次のコンテナの停止処理が開始します。
停止処理が開始されてから一定時間経過してもコンテナが停止しない場合は、強制終了されます。
強制処理が実行されるまでの時間は指定可能です。デフォルトは10秒です。
起動中のコンテナを停止する
以下のコマンドで、起動中のコンテナtestvmを停止します。
$ docker stop testvm
docker psコマンドでtestvmコンテナが停止していることを確認します。
その際、「-a」オプションを指定します。「-a」オプションが無い場合は、起動中のコンテナしか表示されません。
$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c1c51a5aa9e6 ubuntu "bash" About a minute ago Exited (137) 2 seconds ago testvm
「STATUS」が「Exited」と表示されてますので、停止していることが確認できます。
強制終了時間を指定してコンテナを停止する
「-t」オプションを付けて時間(単位は秒)を指定すると、コンテナの停止処理を開始してから、指定時間経過後に、強制終了を試みます。
ここでいう強制終了とは、プロセスのkillを行うことを指します。
シグナル的には、最初に「SIGTERM」で停止処理を行い、指定時間経過後に「SIGKILL」を送信します。
「-t」を指定しない場合でも、デフォルト時間である10秒経過すると強制終了する仕様になってます。
おわりに
以上でdocker stopコマンドの紹介を終わります。
ご指摘、ご要望などが御座いましたらコメントいただけるとうれしいです。
他のDockerコマンドの実例付紹介記事は、本サイト内の別記事「Dockerコマンドの一覧(オリジナルな実例付き)」をご参照ください。
ご訪問ありがとうございました!
コメント