LinuCレベル3 プラットフォームスペシャリスト コンテナ技術の利用 問4
コンテナ技術の利用/コンテナの操作と管理docker inspectコマンドとdocker logsコマンドの違いに関する説明として適切なものはどれか。
当サイトのオリジナル問題(LinuCレベル3 プラットフォームスペシャリストの出題範囲「コンテナ技術の利用」に対応。実際の試験問題ではありません)
- Adocker inspectはコンテナ内で実行中のプロセス一覧を表示し、docker logsはイメージのビルド履歴を表示する
- Bどちらもコンテナの状態を返すが、docker inspectは稼働中のコンテナに、docker logsは停止済みのコンテナにのみ使える
- Cdocker logsが設定情報を、docker inspectがログ出力を表示するという、名前から受ける印象とは逆の関係にある
- Ddocker inspectは設定・状態情報をJSON形式で表示し、docker logsはコンテナの標準出力・標準エラー出力を表示する
正解:D
解説
docker inspectは、コンテナやイメージ、ネットワーク等の詳細な設定・状態情報(IPアドレス、マウント、環境変数、ヘルスチェック状態等)をJSON形式で表示するコマンドです。docker logsは、コンテナ内のメインプロセスが出力する標準出力・標準エラー出力のログを表示するコマンドです。両者は表示する情報の種類がまったく異なります。
選択肢ごとの解説
- A誤り。コンテナ内のプロセス一覧はdocker top、イメージのビルド履歴はdocker historyの役割です。
- B誤り。docker inspectは停止中のコンテナにも使え、docker logsは稼働中のコンテナのログも表示できます。
- C誤り。設定情報がdocker inspect、ログがdocker logsであり、名前のとおりの対応です。
- D正しい。docker inspectは詳細な設定・状態情報をJSONで、docker logsは標準出力・標準エラー出力を表示します。