1. イメージの表示・削除
  2. イメージの検索、取得


Dockerのコンテナイメージ管理について

イメージの表示・削除

Dockerでは、レポジトリからイメージを取得し、コンテナを作成します。 レポジトリは"DockerHub"と呼ばれる公開レポジトリか、自分達や他の人が作成したレポジトリを登録して使うことができます。

  • イメージの確認

  • 現在ローカル環境に存在するイメージはimagesコマンドで確認できます。 初期状態では以下のようにカラです。

    # docker images
    REPOSITORY          TAG                 IMAGE ID            CREATED             VIRTUAL SIZE

    pullコマンドなどでイメージを取得すると以下のように表示されます。

    # docker images
    docker.io/centos    7                   eeb3a076a0be        3 days ago          196.7 MB
    docker.io/centos    6                   6e93f19d1d37        4 weeks ago         228.9 MB

    中間イメージを含む全てのイメージを表示する場合は、オプション-aを追加します。

    # docker images -a
    REPOSITORY          TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
    my                  mysql               8bc5f1b22b61        4 hours ago         869.8 MB
    <none>              <none>              9f33a7d38eb3        4 hours ago         869.8 MB
    <none>              <none>              c3018c94d23d        4 hours ago         869.8 MB
    <none>              <none>              57c415290d83        4 hours ago         869.8 MB

  • イメージの削除

  • イメージを削除する場合は、rmiコマンドで、削除するイメージのID、又は[レポジトリ:タ]を指定します。

    # docker rmi 8bc5f1b22b61

イメージの検索、取得

searchコマンドで必要なイメージを検索します。 CentOSを検索する場合、以下を実行します。

# docker search centos
レポジトリを手動で登録していない場合は、Docker Hubと呼ばれる公開レジストリから検索結果を取得して、以下のような結果を表示します。
INDEX       NAME                                      DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
docker.io   docker.io/centos                          The official build of CentOS.                   2048      [OK]
docker.io   docker.io/jdeathe/centos-ssh              CentOS-6 6.7 x86_64 / CentOS-7 7.2.1511 x8...   18                   [OK]
docker.io   docker.io/jdeathe/centos-ssh-apache-php   CentOS-6 6.7 x86_64 / Apache / PHP / PHP M...   14                   [OK]
docker.io   docker.io/million12/centos-supervisor     Base CentOS-7 with supervisord launcher, h...   10                   [OK]
docker.io   docker.io/blalor/centos                   Bare-bones base CentOS 6.5 image                8                    [OK]
docker.io   docker.io/nimmis/java-centos              This is docker images of CentOS 7 with dif...   8                    [OK]
docker.io   docker.io/torusware/speedus-centos        Always updated official CentOS docker imag...   7                    [OK]
docker.io   docker.io/centos/mariadb55-centos7                                                        3                    [OK]
docker.io   docker.io/nathonfowlie/centos-jre         Latest CentOS image with the JRE pre-insta...   3                    [OK]
docker.io   docker.io/nickistre/centos-lamp           LAMP on centos setup                            3                    [OK]
docker.io   docker.io/consol/sakuli-centos-xfce       Sakuli end-2-end testing and monitoring co...   2                    [OK]
docker.io   docker.io/darksheer/centos                Base Centos Image -- Updated hourly             1                    [OK]
docker.io   docker.io/layerworx/centos                CentOS container with etcd, etcdctl, confd...   1                    [OK]
docker.io   docker.io/lighthopper/orientdb-centos     A Dockerfile for creating an OrientDB imag...   1                    [OK]
docker.io   docker.io/pacur/centos-6                  Pacur CentOS 6                                  1                    [OK]
docker.io   docker.io/pacur/centos-7                  Pacur CentOS 7                                  1                    [OK]
docker.io   docker.io/softvisio/centos                Centos                                          1                    [OK]
docker.io   docker.io/timhughes/centos                Centos with systemd installed and running       1                    [OK]
docker.io   docker.io/yajo/centos-epel                CentOS with EPEL and fully updated              1                    [OK]
docker.io   docker.io/blacklabelops/centos            CentOS Base Image! Built and Updates Daily!     0                    [OK]
docker.io   docker.io/grayzone/centos                 auto build for centos.                          0                    [OK]
docker.io   docker.io/januswel/centos                 yum update-ed CentOS image                      0                    [OK]
docker.io   docker.io/jsmigel/centos-epel             Docker base image of CentOS w/ EPEL installed   0                    [OK]
docker.io   docker.io/lighthopper/openjdk-centos      A Dockerfile for creating an OpenJDK image...   0                    [OK]
docker.io   docker.io/ustclug/centos                   USTC centos                                    0                    [OK]

CentOSの場合は、検索結果の1番目に表示されるdocker.io/centosというオフィシャルビルドがありますので、それを使用します。

  • CentOS 7のイメージ取得

  • CentOS 7 のオフィシャルビルドイメージを取得する場合は、以下を実行します。

    # docker pull centos:7
    すると、以下のようなります。
    Trying to pull repository docker.io/library/centos ... 7: Pulling from library/centos
    
    47d44cb6f252: Pull complete
    6fdebd7b0eb5: Pull complete
    a63aae4d216f: Pull complete
    bb3d629a7cbc: Pull complete
    Digest: sha256:3cdc0670fe9130ab3741b126cfac6d7720492dd2c1c8ae033dcd77d32855bab2
    Status: Downloaded newer image for docker.io/centos:7

  • CentOS 6のイメージ取得

  • CentOS 6 のオフィシャルビルドイメージを取得する場合は、以下のようになります。

    # docker pull centos:6
    Trying to pull repository docker.io/library/centos ... 6: Pulling from library/centos
    
    85c0cc8455d6: Pull complete
    362ef9f9960d: Pull complete
    6e93f19d1d37: Pull complete
    47d44cb6f252: Already exists
    Digest: sha256:511c0da6f307b782380fe86deccf10bca936f5cfb44c6056266baf8617f8074e
    Status: Downloaded newer image for docker.io/centos:6