はじめに
システム管理者にとって、コンテナイメージを調査するスキルは、その構成要素、内容、および信頼性を理解するための基本です。このチャレンジでは、podman コマンドラインツールを使用して、コンテナイメージに関する詳細な低レベル情報を取得する方法を学びます。これは、コンテナ化された環境を効果的かつ安全に管理するための重要な能力です。
コンテナイメージの調査
このチャレンジでは、podman コマンドラインツールを使用してコンテナイメージを調査する方法を習得します。
タスク
あなたの目標は、nginx:latest コンテナイメージを調査し、特定の情報を抽出することです。
nginx:latestイメージに対してpodman image inspectコマンドを実行し、詳細なメタデータを表示してください。- コマンドの出力から、イメージの
Architecture(アーキテクチャ)とOs(オペレーティングシステム)を特定してください。 - イメージのルートファイルシステムを構成する
Layers(レイヤー)のリストを確認してください。 - イメージの一意で検証可能な識別子を確認するために、
RepoDigestsを見つけてください。
要件
- すべてのタスクは
podmanコマンドラインツールを使用して実行する必要があります。 - 調査対象のコンテナイメージは
nginx:latestです。
例
コマンドを実行すると、膨大な JSON データが出力されます。以下は、期待される構造を簡略化した例です。
[
{
"Id": "sha256:f655a1ae999b8525e33a6800a833c84835e4533b4a1393df1066a935e3b390ac",
"RepoTags": [
"nginx:latest"
],
"RepoDigests": [
"nginx@sha256:2ab488493232f254773734a0f41a32b6e3999593338eda235760343c6138810c"
],
"Parent": "",
"Comment": "built by buildkit",
"Created": "2024-04-02T13:58:45.99493299Z",
"Config": {
...
},
"Architecture": "amd64",
"Os": "linux",
"RootFS": {
"Type": "layers",
"Layers": [
"sha256:b41b647f50733393372724b2b96de3e5a50d745a61a338d3f51125596d05e489",
"sha256:9e2f269c703a19a795f4431d24499a0918c8b501d21039a4861989a43ac1db71",
"sha256:e25333e2432d31b420c3156b7448ff29113d11b65df089b4323f8d822551096a"
]
}
}
]
ヒント
podman image inspectコマンドは非常に長い JSON を出力します。必要な情報を見つけるために、ターミナルをスクロールする必要があるかもしれません。- 1 つのイメージを調査しているため、出力は単一のオブジェクトを含む JSON 配列になります。
- JSON 出力の中から、
Architecture、Os、RootFS、RepoDigestsといった特定のキーを探してください。
まとめ
このチャレンジでは、podman image inspect を使用してコンテナイメージの設定や構成を深く掘り下げる方法を学びました。イメージのメタデータ、レイヤーのダイジェスト、リポジトリのダイジェストといった主要な情報の場所を特定する練習を行いました。このスキルは、トラブルシューティング、セキュリティ監査、および正しく改ざんされていないコンテナイメージを使用していることを確認するために不可欠です。



