“hub-tool”を使って”Docker Hub”上のイメージタグを一覧表示する
はじめに
シェルでDockerHubリポジトリからイメージとタグを取得する方法 | ゲンゾウ用ポストイット で、
Docker Hub 上のイメージで利用できるタグを一覧表示するための方法を紹介しましたが、
hub-tool
という便利なツールを導入することでタグの一覧表示が容易に実現できるようになりましたので紹介します。
検証環境
$ uname -moi
x86_64 MacBookPro16,1 Darwin
$ bash -version | head -n 1
GNU bash, version 5.0.18(1)-release (x86_64-apple-darwin19.5.0)
$ docker --version
Docker version 20.10.2, build 2291f61
hub-tool
コマンド : Docker Hub Tool
Docker Hub Tool とは、 コマンドラインから "Docker Hub" で自分が作成したリポジトリを操作するためのコマンドラインツールになります。
「自分が作成したリポジトリ」のみですが、例外として他のエンジニアが提供しているDockerイメージのタグを一覧表示するための機能が提供されています。
インストール
go get
コマンドを使ってインストール
Go言語の実行環境が用意されている場合は go get
コマンドが利用できます。
$ GO111MODULE=on go get github.com/docker/hub-tool
Go言語の実行環境が用意されていない場合には後述の方法をお試しください。
tar パッケージを使ってインストール
パッケージが提供されていたためそちらをダウンロードすればすぐに利用できます。
# 作業ディレクトリへ移動(どこでもよい)
$ cd /tmp
# ダウンロード
$ curl -L -O https://github.com/docker/hub-tool/releases/download/v0.3.0/hub-tool-darwin-amd64.tar.gz
# 展開
$ tar xf hub-tool-darwin-amd64.tar.gz
# パスの通っているディレクトリへ移動
$ mv hub-tool/hub-tool /usr/local/bin
正しくインストールされているか確認してみます。
$ hub-tool --version
Docker Hub Tool v0.3.0, build 4b740d3
初期設定
初期設定として、 Docker Hub にアクセスするための認証設定を行う必要があります。
当然、すでにサイトからアカウントが作成済みである必要があります。
# 引数として、自分の **Docker Hub** アカウント名を指定。
# パスワードを聞かれるので入力する。
$ hub-tool login genzouw
Password:
Login Succeeded
Login Succeeded の文字が表示されれば初期設定完了です。
公式の "MySQL" イメージのタグを一覧表示してみる
それでは早速、公式の MySQL Dockerイメージのタグを一覧表示してみます。
hub-tool tag ls
コマンドを利用します。引数にはタグを一覧表示する対象のイメージ名を指定しましょう。
( --all
オプションを付けないと、比較的新しくプッシュされたタグしか表示されません。過去にプッシュされたタグも含めすべて確認したい場合には必要です。)
$ hub-tool tag ls --all mysql
TAG DIGEST STATUS LAST UPDATE LAST PUSHED LAST PULLED SIZE
mysql:latest sha256:43bf7db32d11e75d8463a8bc077f09af5fb5b84b182b1d74124ddca633093bfa active 2 weeks ago 2 weeks 40 minutes 159.3MB
mysql:5.6.51 sha256:1c224b6270c6a02f9e7eb9e4ca6486d3466f12be7390c0c0b6e6f908ea1a0346 active 13 days ago 13 days 20 minutes 103MB
mysql:5.6 sha256:1c224b6270c6a02f9e7eb9e4ca6486d3466f12be7390c0c0b6e6f908ea1a0346 active 13 days ago 13 days 20 minutes 103MB
mysql:8.0.23 sha256:43bf7db32d11e75d8463a8bc077f09af5fb5b84b182b1d74124ddca633093bfa active 2 weeks ago 2 weeks 40 minutes 159.3MB
mysql:8.0 sha256:43bf7db32d11e75d8463a8bc077f09af5fb5b84b182b1d74124ddca633093bfa active 2 weeks ago 2 weeks 40 minutes 159.3MB
mysql:8 sha256:43bf7db32d11e75d8463a8bc077f09af5fb5b84b182b1d74124ddca633093bfa active 2 weeks ago 2 weeks 40 minutes 159.3MB
mysql:5.7.33 sha256:45ad5952e4f304d39aedb02caf7e0afc30a310e66f7ab60af8acf20fd4a0f54c active 2 weeks ago 2 weeks 40 minutes 154.6MB
mysql:5.7 sha256:45ad5952e4f304d39aedb02caf7e0afc30a310e66f7ab60af8acf20fd4a0f54c active 2 weeks ago 2 weeks 40 minutes 154.6MB
mysql:5 sha256:45ad5952e4f304d39aedb02caf7e0afc30a310e66f7ab60af8acf20fd4a0f54c active 2 weeks ago 2 weeks 40 minutes 154.6MB
mysql:8.0.22 sha256:7d83f4d89c92d7e72b366cc9d0f5c19b12cba934c5e135d21d81b2b84651df69 active 3 weeks ago 3 weeks 54 minutes 159MB
...(省略)...
mysql:5.6.27 stale 5 years ago 5 years 111.2MB
mysql:5.7.9 stale 5 years ago 5 years 123MB
mysql:5.5.46 stale 5 years ago 5 years 88.03MB
mysql:5.5.40 stale 5 years ago 5 years 73.55MB
mysql:5.7.4 stale 5 years ago 5 years 88.53MB
mysql:5.6.17 stale 5 years ago 5 years 164MB
mysql:5.5.41 stale 5 years ago 5 years 73.5MB
mysql:5.7.5-m15 stale 5 years ago 5 years 113.4MB
mysql:5.6.21 stale 5 years ago 5 years 79.21MB
mysql:5.6.20 stale 5 years ago 5 years 79.25MB
100/117 listed, use --all flag to show all
過去に シェルでDockerHubリポジトリからイメージとタグを取得する方法 | ゲンゾウ用ポストイット で紹介した方法とは異なり、あっという間にすべてのタグが一覧表示されます。
ひとこと
もちろん、本来の機能である「自分が作成したリポジトリ」の一覧表示や削除なども行えるツールとなっています。
ディスカッション
コメント一覧
まだ、コメントがありません