4.

Docker バージョン確認コマンド完全ガイド(version / info / compose)

編集
この記事の要点
  • サクッと確認: docker --version (Client のみ)
  • Client + Server 詳細: docker version (ダッシュ無し、両方表示)
  • システム全体: docker info (storage driver、Cgroups、ランタイム等)
  • Compose V2 は docker compose version(スペース)、V1 旧は docker-compose --version(ハイフン)
  • Docker Desktop ユーザは GUI の 「Settings」→「About Docker Desktop」で一括確認

もっとも基本: docker --version

docker --version
# Docker version 24.0.7, build afdd53b

docker -v
# 同じ(短縮形)

docker --version --format '{{.Client.Version}}'
# 24.0.7  ← バージョン番号だけ取りたいとき

これは Client (CLI) のバージョンだけを素早く返します。サーバー(dockerd)のバージョンは別途確認が必要です。

Client + Server の両方: docker version

ダッシュ無しの docker version は、CLI と Docker Engine の両方の詳細を表示します:

docker version
# Client: Docker Engine - Community
#  Version:           24.0.7
#  API version:       1.43
#  Go version:        go1.21.5
#  Git commit:        afdd53b
#  Built:             Thu Oct 26 09:08:01 2023
#  OS/Arch:           linux/amd64
#  Context:           default
#
# Server: Docker Desktop 4.27.1 (136059)
#  Engine:
#   Version:          24.0.6
#   API version:      1.43 (minimum version 1.12)
#   Go version:       go1.20.7
#   Git commit:       1a79695
#   Built:            Mon Sep  4 12:31:36 2023
#   OS/Arch:          linux/amd64
#   Experimental:     false
#  containerd:
#   Version:          1.7.6
#  runc:
#   Version:          1.1.9
#  docker-init:
#   Version:          0.19.0

このコマンドが返す情報は本番調査で最も重宝します。API version の互換性確認に必須。

用途別の使い分け

コマンド表示内容用途
docker --versionClient のみ 1 行サクッと確認
docker versionClient + Server 詳細互換性調査
docker infoシステム全体構成・ストレージ確認
docker compose versionCompose V2新形式の Compose
docker-compose --versionCompose V1(旧)古い環境

docker info: システム全体の構成

docker info
# Client: Docker Engine - Community
#  Version:    24.0.7
#  Context:    default
#  Plugins:
#   buildx: Docker Buildx (Docker Inc.)
#   compose: Docker Compose (Docker Inc.)
#
# Server:
#  Containers: 12
#   Running: 3
#   Paused: 0
#   Stopped: 9
#  Images: 47
#  Server Version: 24.0.6
#  Storage Driver: overlay2
#   Backing Filesystem: extfs
#  Logging Driver: json-file
#  Cgroup Driver: systemd
#  Cgroup Version: 2
#  Plugins:
#   Volume: local
#   Network: bridge host ipvlan macvlan null overlay
#  Runtimes: io.containerd.runc.v2 runc
#  Default Runtime: runc
#  Architecture: x86_64
#  CPUs: 8
#  Total Memory: 15.49GiB
#  Name: ubuntu-host
#  Kernel Version: 5.15.0-91-generic
#  Operating System: Ubuntu 22.04.3 LTS
#  Docker Root Dir: /var/lib/docker

本番障害調査では Storage Driver / Cgroup Driver / Total Memory / Server Version を必ずチェック。

JSON 出力(スクリプト連携)

# JSON で取得
docker version --format '{{json .}}' | jq

# 特定フィールドだけ
docker version --format '{{.Server.Version}}'
# 24.0.6

docker version --format '{{.Client.Version}}-{{.Server.Version}}'
# 24.0.7-24.0.6

# info も JSON 化可能
docker info --format '{{json .}}' | jq '.ServerVersion, .OperatingSystem'

Docker Compose のバージョン

Compose はV1 と V2 で根本的に違うので、コマンド形式に注意:

# Compose V2 (Docker Desktop / 現代の主流) ★ 推奨
docker compose version
# Docker Compose version v2.23.3

# Compose V1 (Python 製、サポート終了)
docker-compose --version
# docker-compose version 1.29.2, build 5becea4c

# V1 / V2 両方インストールされている場合、両方を確認
which docker-compose
docker compose version 2>/dev/null && echo "V2 あり"

V1 と V2 の違い

項目Compose V1Compose V2
コマンドdocker-compose (ハイフン)docker compose (スペース)
言語PythonGo (docker CLI プラグイン)
サポート2023 年 6 月 EOL★ 現役
速度遅い速い
互換性compose.yaml v2/v3compose.yaml の全機能

Docker Desktop の特殊事情

Docker Desktop(Windows / Mac)はEngine + CLI + Compose + Kubernetes がワンパッケージ。GUI から一括確認可能:

  • Docker Desktop メニュー → Settings → About
  • Engine / Compose / Kubernetes / Credential Helper のバージョンが表示
  • 右下の歯車から Software Updates でアップデート可能

WSL2 上の Docker(Windows)

# Windows PowerShell
docker version

# WSL Ubuntu 内
wsl -d Ubuntu
docker version

# Docker Desktop が WSL2 バックエンドの場合、両者で同じ Engine が見える

Docker Engine と Docker Desktop の違い

項目Docker EngineDocker Desktop
対象 OSLinux (主)Windows / Mac / Linux
GUI無しあり
料金無料個人/小規模無料、商用は有料
WSL2 / VMそのまま動くWSL2 / Hyper-V / HVF を内蔵
compose / k8s別途インストール同梱

古いバージョンが残っている場合の確認

# Linux のパッケージ管理
dpkg -l | grep docker        # Debian/Ubuntu
rpm -qa | grep docker        # CentOS/RHEL

# Snap 経由の場合
snap list | grep docker

# 複数バージョンが入っている場合
which -a docker
ls -la $(which docker)

バージョン互換性の調べ方

  • Docker API バージョン: docker versionAPI version
  • SDK / クライアントは API version の上限を要求 → サーバ側が古いと動かない
  • compose.yaml の version 指定(Compose V2 では非推奨)
  • Kubernetes 連携バージョンは Docker Desktop のみで管理

FAQ

Q: docker --versiondocker version は何が違う?
A: 前者は CLI 本体だけの 1 行表示。後者は CLI + Engine の詳細を返します。スクリプトでサーバ側を見たいときは後者。

Q: docker-compose と docker compose、どちらを使うべき?
A: 新規は必ず docker compose (V2)。V1 (docker-compose) は 2023/6 で EOL。

Q: バージョンアップしたいが互換性が心配
A: docker version で API 互換を確認、テスト環境で docker info の Storage Driver 等が変わっていないか確認してから本番へ。

編集
Post Share
子ページ

子ページはありません

同階層のページ
  1. インストール方法(Windows)
  2. イメージの検索 / 取得 / 取得済み一覧の確認
  3. use windows containers instead of linux containers docker
  4. バージョンの確認
  5. エラー一覧

最近更新/作成されたページ