docker imagesでREPOSITORY指定

Dockerにおいて表題の通り。Dockerのversionの違いによるものかと思っていたのだが、どうやらSwarmが原因であったようなのでメモとして残しておく。

■ 環境

  • Docker 1.8.2, 1.7.1
  • Swarm 0.4.0

■ きっかけ

`docker images`で特定のコンテナイメージの情報だけが欲しい場合、下記のように実行することで取得できる。

$ docker images centos
REPOSITORY   TAG   IMAGE ID       CREATED        VIRTUAL SIZE
centos       6     a005304e4e74   3 months ago   203.1 MB

この動きを期待していたのだが、ある環境においては”コンテナイメージ名(REPOSITORY)“を指定しても全てのコンテナイメージの一覧が表示されてしまい、悩んでいた。

■ docker images [REPOSITORY]

取得できない環境。

どうやらSwarmで複数のDockerホストにまたがっている場合に、`docker images [REPOSITORY]`が効かないようである。下記はAmazonLinuxにおける状態である。

$ docker version
Client version: 1.7.1
Client API version: 1.19
Go version (client): go1.4.2
Git commit (client): 786b29d/1.7.1
OS/Arch (client): linux/amd64
Server version: swarm/0.4.0
Server API version: 1.16
Go version (server): go1.4.2
Git commit (server): d647d82
OS/Arch (server): linux/amd64
$
$ docker images centos
REPOSITORY   TAG      IMAGE ID       CREATED        VIRTUAL SIZE
java         7        ade42d38879d   7 weeks ago    587.4 MB
centos       6        a005304e4e74   3 months ago   203.1 MB
swarm        latest   207e8b983242   8 weeks ago    10.2 MB
mongo        3.0.3    fa0a6690446b   3 months ago   257.7 MB

当初はDockerのversionによるものかと思ったが、1.7系のドキュメントを確認しても使用はできそうである。

http://docs.docker.com/v1.7/docker/reference/commandline/images/

実際に、Swarmを経由してのアクセスではなく、Dockerホストにログインし`docker images`を実行したところ、思い通りの結果を得ることができた。

現状では、Swarmを使用した環境では使えないオプションのようである。何かしら別の対応を考えなければならない。

以上。

■ 関連

コメントを残す

メールアドレスが公開されることはありません。

CAPTCHA


このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください