Dockerを使ってUbuntuコンテナを起動した後、適切に停止・終了する方法を知っておくことは重要です。
この記事では、よくある3つのシナリオに分けて、初心者にもわかりやすく解説します。
ケース①:今ターミナルで入っているUbuntuを終了したい
docker run -it ubuntu
などのコマンドでUbuntuコンテナを対話モードで起動し、現在そのターミナル内でUbuntuのシェルを操作している場合:
終了方法:
exit
または、キーボードショートカット Ctrl + D
を押すこともできます。
これにより、コンテナ内のセッションが終了し、コンテナ自体も自動的に停止します。ただし、起動時に--rm
オプションを指定していない場合、コンテナは「停止」状態で残ります。
注意点:
- コンテナは「停止」しただけで、システムからは削除されていません
docker ps -a
コマンドで一覧に表示されます- 再度起動したい場合は
docker start <コンテナID>
で再開できます
ケース②:バックグラウンドで動いているUbuntuコンテナを停止したい
docker run -d ubuntu
のようにデタッチモード(バックグラウンド)で起動したコンテナを停止する場合:
手順:
- まず、実行中のコンテナを確認します:
docker ps
- 表示されたコンテナIDまたは名前を使って停止します:
docker stop <コンテナIDまたは名前>
実行例:
docker stop hopeful_morse
または
docker stop a72f3b4c5d6e
ケース③:完全に終了&削除したい
停止したコンテナを完全に削除して、システムからなくしたい場合の手順です:
ステップ①:まず停止する(すでに停止している場合は不要)
docker stop <コンテナ名またはID>
ステップ②:コンテナを削除する
docker rm <コンテナ名またはID>
実行例:
docker rm hopeful_morse
時短テクニック:
停止と削除を一度に行いたい場合は、以下のように実行できます:
docker rm -f <コンテナ名またはID>
✅ 便利なコマンド集
コマンド | 説明 |
---|---|
docker ps | 実行中のコンテナのみ表示 |
docker ps -a | 停止中のコンテナも含めてすべて表示 |
docker start <コンテナID> | 停止したコンテナを再開 |
docker restart <コンテナID> | コンテナを再起動 |
docker rm $(docker ps -aq) | 停止中のすべてのコンテナを一括削除 |
まとめ|Ubuntuコンテナの停止・終了方法
状況 | コマンド例 | 備考 |
---|---|---|
ターミナル内のUbuntuから出る | exit または Ctrl + D | 対話モードのコンテナが停止する |
起動中コンテナを停止 | docker stop コンテナID | コンテナは残るが停止状態になる |
停止後に削除 | docker rm コンテナID | システムから完全に削除される |
停止と削除を一度に | docker rm -f コンテナID | 実行中でも強制削除(データ損失注意) |
これらのコマンドを覚えておくことで、Docker上のUbuntuコンテナをきちんと管理でき、システムリソースの無駄遣いを防げます。
特に開発環境では、使わないコンテナを適切に停止・削除することで、マシンのパフォーマンスを維持することが重要です。
コメント