過去問ドリル

LinuCレベル1 Linuxのインストールと仮想マシン・コンテナの利用 問43

Linuxのインストールと仮想マシン・コンテナの利用/仮想マシン・コンテナの概念と利用

Dockerで、停止済みのコンテナ web(docker ps -a の一覧に表示される)を削除したい。コンテナの元になったイメージは、今後も別のコンテナの起動に使うので残しておきたい。コマンドとして適切なものはどれか。

当サイトのオリジナル問題(LinuCレベル1の出題範囲「Linuxのインストールと仮想マシン・コンテナの利用」に対応。実際の試験問題ではありません)

正解:A

解説

docker rm はコンテナを削除するコマンドで、元になったイメージには影響しません。停止済みのコンテナはそのまま削除でき、稼働中のコンテナを削除するには先に停止するか -f オプションを付けます。一方、docker rmi はイメージを削除するコマンドです。コンテナとイメージは別の管理対象であり、削除のコマンドも分かれている点を押さえておきましょう。

選択肢ごとの解説

  • A正しい。docker rm は指定したコンテナを削除し、イメージはローカルに残ります。
  • B誤り。docker rmi はイメージを削除するコマンドです。ここでは「web」という名前のイメージを削除しようとする指定になり、コンテナの削除には使いません。
  • C誤り。docker stop は稼働中のコンテナを停止するコマンドで、すでに停止しているコンテナを削除することはできません。
  • D誤り。docker kill は稼働中のコンテナのプロセスへシグナル(既定はSIGKILL)を送って止めるコマンドで、コンテナを削除はしません。
LinuCレベル1の問題を演習モードで解く