Docker stats コマンド

 Docker 命令大全Docker コマンド大全


docker statsこのコマンドは、Docker コンテナのリソース使用状況(CPU、メモリ、ネットワーク I/O、ブロック I/O を含む)をリアルタイムで表示するために使用されます。

docker statsLinux システム内の...と同様にtopコマンドですが、Docker コンテナ専用です。docker stats、ユーザーはコンテナのリソース使用状況を監視でき、パフォーマンスの最適化やトラブルシューティングに役立ちます。

構文

docker stats [OPTIONS] [CONTAINER...]

OPTIONS の説明:

  • --all , -a :すべてのコンテナを表示します(実行していないものも含む)。

  • --format :戻り値のテンプレートファイルを指定します。

  • --no-stream :現在の状態を表示してすぐに終了し、リアルタイム更新はしません。

  • --no-trunc :出力を切り詰めません。

実行中のすべてのコンテナのリソース使用状況を表示:

docker stats

指定したコンテナのリソース使用状況を表示:

docker stats my_container

すべてのコンテナ(実行していないコンテナも含む)のリソース使用状況を表示:

docker stats --all

継続的に更新するのではなく、データを一度だけ表示:

docker stats --no-stream

カスタム形式で出力:

docker stats --format "table {{.Container}}\t{{.CPUPerc}}\t{{.MemUsage}}"

実例

実行中のすべてのコンテナの情報を一覧表示します。

サンプル@サンプル:~$  docker stats
CONTAINER ID        NAME                                    CPU %               MEM USAGE / LIMIT     MEM %               NET I/O             BLOCK I/O           PIDS
b95a83497c91        awesome_brattain                        0.28%               5.629MiB / 1.952GiB   0.28%               916B / 0B           147kB / 0B          9
67b2525d8ad1        foobar                                  0.00%               1.727MiB / 1.952GiB   0.09%               2.48kB / 0B         4.11MB / 0B         2
e5c383697914        test-1951.1.kay7x1lh1twk9c0oig50sd5tr   0.00%               196KiB / 1.952GiB     0.01%               71.2kB / 0B         770kB / 0B          1
4bda148efbc0        random.1.vnc8on831idyr42slu578u3cr      0.00%               1.672MiB / 1.952GiB   0.08%               110kB / 0B          578kB / 0B          2

出力詳細の説明:

CONTAINER ID と NAME:コンテナ ID と名前。

CPU % と MEM %:コンテナが使用する CPU とメモリの割合。

MEM USAGE / LIMIT:コンテナが使用中のメモリの合計、および使用が許可されているメモリの合計。

NET I/O:コンテナがネットワークインターフェースを介して送受信したデータ量。

BLOCK I/O:コンテナがホスト上のブロックデバイスから読み書きしたデータ量。

PIDs:コンテナが作成したプロセスまたはスレッドの数。

コンテナの ID または名前で情報を表示:

サンプル@サンプル:~$ docker stats awesome_brattain 67b2525d8ad1

CONTAINER ID        NAME                CPU %               MEM USAGE / LIMIT     MEM %               NET I/O             BLOCK I/O           PIDS
b95a83497c91        awesome_brattain    0.28%               5.629MiB / 1.952GiB   0.28%               916B / 0B           147kB / 0B          9
67b2525d8ad1        foobar              0.00%               1.727MiB / 1.952GiB   0.09%               2.48kB / 0B         4.11MB / 0B         2

JSON 形式で出力:

サンプル@サンプル:~$ docker stats nginx --no-stream --format "{{ json . }}"
  {"BlockIO":"0B / 13.3kB","CPUPerc":"0.03%","Container":"nginx","ID":"ed37317fbf42","MemPerc":"0.24%","MemUsage":"2.352MiB / 982.5MiB","Name":"nginx","NetIO":"539kB / 606kB","PIDs":"2"}

指定した情報を出力:

サンプル@サンプル:~$ docker stats --all --format "table {{.Container}}\t{{.CPUPerc}}\t{{.MemUsage}}" fervent_panini 5acfcb1b4fd1 drunk_visvesvaraya big_heisenberg
  {"BlockIO":"0B / 13.3kB","CPUPerc":"0.03%","Container":"nginx","ID":"ed37317fbf42","MemPerc":"0.24%","MemUsage":"2.352MiB / 982.5MiB","Name":"nginx","NetIO":"539kB / 606kB","PIDs":"2"}

CONTAINER                CPU %               MEM USAGE / LIMIT
fervent_panini           0.00%               56KiB / 15.57GiB
5acfcb1b4fd1             0.07%               32.86MiB / 15.57GiB
drunk_visvesvaraya       0.00%               0B / 0B
big_heisenberg           0.00%               0B / 0B

よく使うシーン

  • リアルタイム監視:コンテナのリソース使用状況をリアルタイムで確認し、パフォーマンスの監視と最適化を行います。
  • トラブルシューティング:コンテナに問題が発生した場合、リソース使用状況を確認して、問題の根本原因を調査するのに役立ちます。
  • リソース管理:コンテナのリソース使用状況を監視し、リソース配分が適切であることを確認して、リソースの無駄やボトルネックを回避します。

docker statsこのコマンドは、Docker コンテナのリソース使用状況をリアルタイムで監視するための強力なツールです。このコマンドを使用すると、コンテナの CPU、メモリ、ネットワーク I/O、ブロック I/O の詳細情報を取得でき、パフォーマンスの最適化、トラブルシューティング、リソース管理に役立ちます。


 Docker 命令大全Docker コマンド大全

その他の拡張