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

コンテナを再起動する最も簡単な方法は次のコマンドです:
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コンテナをスムーズに運用できます。


コメント