DockerコンテナのCPU使用量を取得する方法


方法1: Docker Statsコマンドを使用する Docker Statsコマンドは、実行中のすべてのコンテナのリアルタイムのパフォーマンス情報を表示します。以下は、CPU使用率を取得するためのコマンドです。

docker stats --format "{{.Container}}: {{.CPUPerc}}"

このコマンドを実行すると、実行中のすべてのコンテナの名前とそれぞれのCPU使用率が表示されます。

方法2: Docker APIを使用する DockerはRESTful APIを提供しており、これを使用してコンテナの情報を取得できます。以下は、Pythonを使用してDocker APIを呼び出し、特定のコンテナのCPU使用率を取得する例です。

import docker
client = docker.from_env()
container = client.containers.get('コンテナID')
stats = container.stats(stream=False)
cpu_percent = stats['cpu_stats']['cpu_usage']['total_usage'] / stats['cpu_stats']['system_cpu_usage'] * 100
print(f"CPU使用率: {cpu_percent}%")

上記のコードでは、Docker SDK for Pythonを使用してDocker APIにアクセスし、指定したコンテナのCPU使用率を取得しています。

以上が、DockerコンテナのCPU使用量を取得する方法といくつかのコード例です。これらの方法を使用すると、コンテナのCPUパフォーマンスをモニタリングし、問題を特定することができます。