docker info
全項目 日本語解説+実践アドバイス付き
🔹 クライアント情報(Client)
項目 | 解説 |
---|---|
Version |
docker CLIのバージョン。CLIとデーモンのバージョンが大きく異なると非互換の可能性があるため、同時アップデート推奨。 |
Context | 複数のDockerデーモン(例:ローカル、リモート)を切り替える機能。docker context create で設定し、docker context use で切り替え可能。 |
Debug Mode | クライアント側のデバッグモード。有効にするとコマンド実行時に詳細なログが出力され、トラブル対応に便利。 |
Plugins | CLIで利用できるプラグイン(例:buildx , compose )。/usr/libexec/docker/cli-plugins に設置。 |
docker version -f 'json'
{"Client":{"Platform":{"Name":"Docker Engine - Community"},"Version":"28.1.1","ApiVersion":"1.49","DefaultAPIVersion":"1.49","GitCommit":"4eba377","GoVersion":"go1.23.8","Os":"linux","Arch":"amd64","BuildTime":"Fri Apr 18 09:52:10 2025","Context":"default"},"Server":{"Platform":{"Name":"Docker Engine - Community"},"Components":[{"Name":"Engine","Version":"28.1.1","Details":{"ApiVersion":"1.49","Arch":"amd64","BuildTime":"Fri Apr 18 09:52:10 2025","Experimental":"false","GitCommit":"01f442b","GoVersion":"go1.23.8","KernelVersion":"6.8.0-58-generic","MinAPIVersion":"1.24","Os":"linux"}},{"Name":"containerd","Version":"1.7.27","Details":{"GitCommit":"05044ec0a9a75232cad458027ca83437aae3f4da"}},{"Name":"runc","Version":"1.2.5","Details":{"GitCommit":"v1.2.5-0-g59923ef"}},{"Name":"docker-init","Version":"0.19.0","Details":{"GitCommit":"de40ad0"}}],"Version":"28.1.1","ApiVersion":"1.49","MinAPIVersion":"1.24","GitCommit":"01f442b","GoVersion":"go1.23.8","Os":"linux","Arch":"amd64","KernelVersion":"6.8.0-58-generic","BuildTime":"2025-04-18T09:52:10.000000000+00:00"}}
context=
フィールド名 | 意味 |
---|---|
"Name" |
コンテキストの名前(ここでは default ) |
"Metadata" |
将来拡張や追加情報のためのメタデータ。通常は空。 |
"Endpoints" |
接続先のエンドポイント定義。Docker 用の情報が入っている。 |
→ "docker.Host"
|
Docker デーモンへの接続先。ここではローカルの Unix ソケット /var/run/docker.sock を使っている。→ つまり「ローカルの Docker に接続」している |
→ "docker.SkipTLSVerify"
|
TLS の証明書検証をスキップするかどうか。通常は false で検証する。 |
"TLSMaterial" |
TLS 証明書・秘密鍵などの情報。ここでは <IN MEMORY> とあるので、ファイルとしては存在していない(または未使用)。 |
"Storage.MetadataPath" |
メタデータの保存先。<IN MEMORY> は保存先が一時的で永続化されていないことを意味する。 |
"Storage.TLSPath" |
TLS 情報の保存場所。同様に <IN MEMORY> 。 |
🔹 サーバ情報(Server)
▼ コンテナとイメージ
項目 | 解説 |
---|---|
Containers | 全コンテナ数。停止コンテナも含まれる。 |
Running / Paused / Stopped | 状態別のコンテナ数。停止コンテナが多いとディスク圧迫の原因になるため docker container prune 推奨。 |
Images | ローカルに存在するDockerイメージの数。未使用イメージは docker image prune 等で削除するのが望ましい。 |
▼ バージョン・ストレージ関連
項目 | 解説 |
---|---|
Server Version | Dockerデーモンのバージョン。CLIバージョンと一致させておくのが無難。 |
Storage Driver | ストレージ管理方式。Linuxでは overlay2 が最適で推奨。 |
Backing Filesystem | Dockerが動作するホスト側のファイルシステム(通常はext4)。 |
Supports d_type | ext4の d_type 機能が有効か。falseなら再フォーマットが必要な場合も。 |
Using metacopy | メタデータだけをコピーする高速化技術。通常はfalseのままでOK。 |
Native Overlay Diff | 差分検出をネイティブサポートしているか。trueなら高速なdocker diff が可能。 |
userxattr | ユーザー拡張属性。セキュリティやバックアップ用途で利用されるが、通常はfalse。 |
▼ ログ・リソース制御
項目 | 解説 |
---|---|
Logging Driver | ログ出力方法。デフォルトは json-file 。大規模運用では fluentd や journald などに切り替える。 |
Cgroup Driver |
systemd を使用することでホストOSと整合性のあるリソース制御が可能。Kubernetesと併用する場合も必須。 |
Cgroup Version | 使用中のcgroup世代(v1またはv2)。v2は細かな制御と統一的な構成が可能。 |
▼ プラグイン関連
種別 | 解説 |
---|---|
Volume | ストレージ管理用ドライバ(例:local, nfs)。 |
Network |
bridge , host , overlay などのネットワーク構成が可能。 |
Log |
awslogs , fluentd , json-file , gelf など、ログ出力形式の種類。 |
▼ Swarm
項目 | 解説 |
---|---|
Swarm | クラスタ構築機能(Swarmモード)。小規模で軽量なクラスタ用途に最適。Kubernetesより簡易。 |
▼ ランタイム
項目 | 解説 |
---|---|
Runtimes / Default Runtime | コンテナを起動する実行エンジン。通常は runc 。GPU用途では nvidia に変更が必要。 |
Init Binary | コンテナのPID 1プロセスとして動く初期化プロセス。Zombieプロセスの防止に重要。 |
containerd version | Dockerが利用する軽量なコンテナ管理デーモンのバージョン。 |
runc version |
runc はOCI準拠のコンテナランタイム。 |
init version |
docker-init の内部バージョン。通常は意識しなくてよい。 |
▼ セキュリティ
項目 | 解説 |
---|---|
apparmor | Ubuntu標準のアクセス制御。強化したい場合は独自プロファイル作成も可能。 |
seccomp | 危険なシステムコールを制限する。Dockerはデフォルトで制限済み。 |
cgroupns | 名前空間ごとのcgroup隔離。マルチユーザーでのセキュリティ強化に有効。 |
🔹 ホスト環境
項目 | 解説 |
---|---|
Kernel Version | 実行中のLinuxカーネルバージョン。新機能対応やセキュリティのため、なるべく新しいバージョンを使用。 |
Operating System | ホストのOS。Linuxでの動作が最も安定・高速。 |
OSType | オペレーティングシステムの種類(Linux/Mac/Windows)。 |
Architecture | CPUアーキテクチャ(例:x86_64、arm64)。ビルドアーキテクチャに関係する。 |
CPUs | 使用可能なCPUコア数。コンテナに割り当て可能。 |
Total Memory | 全メモリ容量。大量のイメージやビルドには大きめのメモリが必要。 |
Name | ホストマシンの名前(hostname と同じ)。ネットワーク識別に使用される。 |
ID | Dockerエンジンの一意識別子。Swarmなどのクラスタ構成時に利用。 |
🔹 その他設定
項目 | 解説 |
---|---|
Docker Root Dir | Dockerの作業ディレクトリ。デフォルトは /var/lib/docker 。容量不足の場合、別ディスクへ変更可能。 |
Debug Mode | サーバ側のデバッグログ出力。/etc/docker/daemon.json に {"debug": true} を書くことで有効化。 |
Experimental | Dockerの実験的機能。安定版リリースに先立ちテストしたい場合に有効化。 |
Insecure Registries | HTTPSなしでアクセスする非安全レジストリ一覧。開発環境専用で使うこと。 |
Live Restore Enabled | デーモン再起動時でもコンテナを落とさずに維持する機能。高可用性を求める運用で有効にすべき。 |