docker versionコマンドの使い方(実例で解説)

Docker公式ロゴ3a
©2023 Docker Inc. All rights reserved

 本記事はDocker ver20.10.8の環境で確認しています。

 このコマンドは、DockerクライアントおよびDockerサーバー(デーモン)のバージョン情報を出力することが可能です。

 docker infoコマンドと同様に、Dockerに関する調査などを行う場合は、現状を把握する意味でも、このコマンドを実行し、各種バージョン情報を出力して確認を行った方が良いと思います。

docker versionコマンドのフォーマットとオプション

フォーマット

docker version [オプション]

主なオプション一覧

オプション概説
-f, --format=""Go言語のテンプレートの仕組みを利用して
出力内容を整形できます

コマンド例

$ docker version

docker versionコマンドの主な使い方

 以下で実例をまじえたコマンドの使い方を解説していきたいと思います。

基本事項の解説

 Docker環境の各コンポーネント別のバージョン情報を出力します。

 トラブルが発生した場合、対応技術者に現在の環境情報を伝えるのはとても重要なことです。

 最低でもdocker versionコマンドは採取しておくことをおすすめします。

Dockerのバージョン情報を出力する

 以下のコマンドを実行しますと、Dockerのバージョン情報が出力されます。

$ docker version

 例えば、64bitパソコン上のLinux上にインストールされたDocker(バージョン19.03.10)にて実行した場合の出力例です。

Client: Docker Engine - Community
 Version:           24.0.7
 API version:       1.43
 Go version:        go1.20.10
 Git commit:        afdd53b
 Built:             Thu Oct 26 09:07:41 2023
 OS/Arch:           linux/amd64
 Context:           default

Server: Docker Engine - Community
 Engine:
  Version:          24.0.7
  API version:      1.43 (minimum version 1.12)
  Go version:       go1.20.10
  Git commit:       311b9ff
  Built:            Thu Oct 26 09:07:41 2023
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.6.26
  GitCommit:        3dd1e886e55dd695541fdcd67420c2888645a495
 runc:
  Version:          1.1.10
  GitCommit:        v1.1.10-0-g18a0cb0
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

 「Client:」部分の各種バージョンは、Dockerクライアントバイナリ及びその実行環境の情報が出力されます。

「Server:」部分の各種バージョンは、Dockerデーモン及びその実行環境の情報が出力されます。

 出力された内容は以下の通りです。

Version
「Client:」セクション内は実行したdockerコマンドのバイナリのバージョン、「Server:」セクション内は処理を行ったdockerデーモンのバージョンが出力されます。

API version
dockerコマンド及びdockerデーモンの各々に実装されているDockerのAPIのバージョンが出力されます。

Go version
dockerコマンド及びdockerデーモンの各々の実行環境内の、Go言語のランタイムのバージョンが出力されます。

Git commit
dockerコマンド及びdockerデーモンの各々のリリースにおけるgitのコミットIDです。

Built
dockerコマンド及びdockerデーモンの各々のリリースのビルド年月日です。

OS/Arch
dockerコマンド及びdockerデーモンの各々の実行環境の、OS種類及びアーキテクチャが出力されます。

Go言語のテンプレート機能を利用して出力内容を整形する

 デフォルトでは前出のバージョン情報が出力されますが、特定の情報のみ(例えばserverのバージョンのみ)出力したい場合は、以下のように「-f」オプションを付けてコマンドを実行します。

$ docker version -f "{{.Server.Version}}"

 「-f」オプションの後に続いている文字列は、Go言語のテンプレート機能を使用する際の記述方法です。

 テンプレートに「{{json .}}」を指定しますと、docker versionコマンドで取得可能な全情報が出力されます。

出力はjson形式になります。

$ docker version -f "{{json .}}"

 以下は出力例です。

{"Client":{"Platform":{"Name":"Docker Engine - Community"},"Version":"24.0.7","ApiVersion":"1.43","DefaultAPIVersion":"1.43","GitCommit":"afdd53b","GoVersion":"go1.20.10","Os":"linux","Arch":"amd64","BuildTime":"Thu Oct 26 09:07:41 2023","Context":"default"},"Server":{"Platform":{"Name":"Docker Engine - Community"},"Components":[{"Name":"Engine","Version":"24.0.7","Details":{"ApiVersion":"1.43","Arch":"amd64","BuildTime":"Thu Oct 26 09:07:41 2023","Experimental":"false","GitCommit":"311b9ff","GoVersion":"go1.20.10","KernelVersion":"5.15.0-91-generic","MinAPIVersion":"1.12","Os":"linux"}},{"Name":"containerd","Version":"1.6.26","Details":{"GitCommit":"3dd1e886e55dd695541fdcd67420c2888645a495"}},{"Name":"runc","Version":"1.1.10","Details":{"GitCommit":"v1.1.10-0-g18a0cb0"}},{"Name":"docker-init","Version":"0.19.0","Details":{"GitCommit":"de40ad0"}}],"Version":"24.0.7","ApiVersion":"1.43","MinAPIVersion":"1.12","GitCommit":"311b9ff","GoVersion":"go1.20.10","Os":"linux","Arch":"amd64","KernelVersion":"5.15.0-91-generic","BuildTime":"2023-10-26T09:07:41.000000000+00:00"}}

おわりに

  以上でdocker versionコマンドの紹介を終わります。

 docker infoコマンドでもdockerシステムに関する有用な情報を出力できますので、合わせてご利用になることをおすすめします。

 docker infoコマンドに関しましては別記事「docker infoコマンドの使い方(実例で解説)」をご参照下さい。

 ご指摘、ご要望などが御座いましたらコメントいただけるとうれしいです。

 他のDockerコマンドの実例付紹介記事は、本サイト内の別記事「Dockerのコマンドの一覧(オリジナルな実例付き)」をご参照ください。

 ご訪問ありがとうございました!

コメント