DockerイベントとシステムモニタリングD

docker events、docker stats、docker system infoでDockerをリアルタイム監視。コンテナライフサイクルイベント、リソース使用量、デーモン設定を追跡します。

System

詳細な説明

リアルタイムイベントストリーミング

docker eventsはDockerデーモンからイベントをリアルタイムでストリーミングします:

# すべてのイベントを監視
docker events

# イベントタイプでフィルタリング
docker events --filter type=container

# 特定のイベントでフィルタリング
docker events --filter event=start --filter event=stop --filter event=die

# コンテナでフィルタリング
docker events --filter container=my-app

# タイムスタンプ以降のイベントを表示
docker events --since "2024-01-15T10:00:00"

イベントタイプ

Dockerはcontainer、image、volume、network、daemon、plugin、node、secret、service、configのイベントを発行します。

docker statsによるリソースモニタリング

# 全コンテナのライブ統計
docker stats

# 特定コンテナの統計
docker stats web api db

# 単一スナップショット(スクリプト用)
docker stats --no-stream

# カスタムフォーマット
docker stats --format "table {{.Name}}\t{{.CPUPerc}}\t{{.MemUsage}}\t{{.MemPerc}}\t{{.NetIO}}\t{{.BlockIO}}"

システム情報

# 完全なシステム情報
docker system info

# 特定フィールド
docker info --format '{{.ServerVersion}}'
docker info --format '{{.MemTotal}}'
docker info --format '{{.NCPU}}'
docker info --format '{{.OperatingSystem}}'

ヘルスモニタリングパターン

# コンテナの死亡を監視
docker events --filter event=die --format '{{.Actor.Attributes.name}} died at {{.Time}}'

# コンテナがヘルシーかチェック
docker inspect --format '{{.State.Health.Status}}' my-app

ユースケース

本番環境でのコンテナヘルスのモニタリング、Dockerイベントに基づくアラートシステムの構築、コンプライアンスのためのコンテナライフサイクル監査、断続的なコンテナクラッシュのデバッグ。

試してみる — Docker CLI Reference

フルツールを開く