Dockerコンテナを再起動する方法

プログラミング・IT
スポンサーリンク

基本コマンド:コンテナを再起動する

コンテナを再起動する最も簡単な方法は次のコマンドです:

docker restart コンテナ名またはコンテナID

例:

docker restart my-container

このコマンドは、指定したコンテナを一度停止させてから、すぐに起動し直します。

再起動対象のコンテナ名やIDを確認する

コンテナの名前やIDが分からない場合は、次のコマンドで確認できます:

docker ps -a

このコマンドを実行すると、NAMES列に表示される名前か、CONTAINER IDを使って再起動の対象を指定できます。

例:

CONTAINER ID   IMAGE         COMMAND    CREATED      STATUS                         PORTS     NAMES
2592a96c394c   hello-world   "/hello"   3 days ago   Exited (0) About an hour ago             trusting_bell

さまざまな再起動方法

停止と起動を別々に行う方法

コンテナの停止と起動を別々のステップで行いたい場合:

docker stop コンテナ名
docker start コンテナ名

この方法なら、停止してから一定時間経過後に起動するなどの操作も可能です。

複数のコンテナを一括で再起動する

すべての実行中のコンテナを一度に再起動したい場合:

docker restart $(docker ps -q)

$(docker ps -q)は現在稼働中のすべてのコンテナIDを取得するコマンドです。

自動再起動の設定

コンテナが異常終了した場合や、Dockerエンジンが再起動した場合に自動的に再起動するよう設定できます:

docker run --restart always -d --name my-container nginx

主な再起動ポリシーは以下の通りです:

モード意味
no(デフォルト)自動再起動しない
always常に自動再起動する
unless-stopped手動で停止しない限り自動再起動する
on-failure異常終了(非ゼロ終了コード)時のみ再起動する

まとめ:Dockerコンテナ再起動コマンド一覧

やりたいことコマンド例
単体コンテナの再起動docker restart コンテナ名
停止→起動(別々に実行)docker stop コンテナ名docker start コンテナ名
すべてのコンテナを一括再起動docker restart $(docker ps -q)
自動再起動設定でコンテナを起動docker run --restart always -d ...

必要に応じて適切な再起動方法を選択することで、Dockerコンテナをスムーズに運用できます。

コメント

タイトルとURLをコピーしました