おれさまラボ

実際に手を動かして理解を深めるブログ。

Dockerを試す - inspect

docker imageの詳細情報を確認する

教科書に沿って、演習していきます。

docker inspectコマンド

docker inspectコマンドを使うと、以下のようにdockerイメージの詳細情報を表示できます。

[bargee@barge ~]$ docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
[bargee@barge ~]$ docker pull ailispaw/barge
Using default tag: latest
latest: Pulling from ailispaw/barge
bef3a934a1c9: Pull complete
Digest: sha256:ffda0b54c75e2a9b00e68e4850a94c5b53eac5d614ac1be8529bb8cb8a6550c2
Status: Downloaded newer image for ailispaw/barge:latest
[bargee@barge ~]$ docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
ailispaw/barge      latest              4df5c5398016        2 days ago          17.61 MB
[bargee@barge ~]$ docker inspect barge
[]
Error: No such image or container: barge
[bargee@barge ~]$ docker inspect ailispaw/barge
[
    {
        "Id": "sha256:4df5c5398016933f0172bb6c4e9fd38129d6b33c76597fe4e622b98314d67592",
        "RepoTags": [
            "ailispaw/barge:latest"
        ],
        "RepoDigests": [],
        "Parent": "",
        "Comment": "",
        "Created": "2016-10-28T22:59:08.063744895Z",
        "Container": "cce752ac2a7faf36c678b95ed25aba3ab7e66d5725c104010980116ba0d25b0c",
        "ContainerConfig": {
            "Hostname": "1902a7bc1d28",
            "Domainname": "",
            "User": "",
            "AttachStdin": false,
            "AttachStdout": false,
            "AttachStderr": false,
            "Tty": false,
            "OpenStdin": false,
            "StdinOnce": false,
            "Env": [
                "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
            ],
            "Cmd": [
                "/bin/sh",
                "-c",
                "#(nop) CMD [\"bash\"]"
            ],
            "Image": "sha256:08c1bb86ec9853d055a35f9dbd125b86e4cabd9e27a05cc8fd4032e1f9dba254",
            "Volumes": null,
            "WorkingDir": "",
            "Entrypoint": [
                "dumb-init"
            ],
            "OnBuild": null,
            "Labels": {}
        },
        "DockerVersion": "1.10.3",
        "Author": "",
        "Config": {
            "Hostname": "1902a7bc1d28",
            "Domainname": "",
            "User": "",
            "AttachStdin": false,
            "AttachStdout": false,
            "AttachStderr": false,
            "Tty": false,
            "OpenStdin": false,
            "StdinOnce": false,
            "Env": [
                "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
            ],
            "Cmd": [
                "bash"
            ],
            "Image": "sha256:08c1bb86ec9853d055a35f9dbd125b86e4cabd9e27a05cc8fd4032e1f9dba254",
            "Volumes": null,
            "WorkingDir": "",
            "Entrypoint": [
                "dumb-init"
            ],
            "OnBuild": null,
            "Labels": {}
        },
        "Architecture": "amd64",
        "Os": "linux",
        "Size": 17612359,
        "VirtualSize": 17612359,
        "GraphDriver": {
            "Name": "overlay",
            "Data": {
                "RootDir": "/mnt/data/var/lib/docker/overlay/eecb3128d51676afb45135d0ce76dc8b155de600eaff10f560d26973fc9f21a6/root"
            }
        }
    }
]

何に使うの?

正直使いみちがよくわからなかったので、ググりました。以下のサイトにあるように、起動ホストのIPアドレス一覧を取得するとか、そういう用途があるみたい。

docker inspectでDockerコンテナの情報を取得する - $shibayu36->blog;

--formatの指定方法は、公式ドキュメント参照。

inspect - Docker

まとめ

全体管理のためには必要なコマンドということですね。管理が楽になる。