1. ホーム
  2. docker

[解決済み] ドッカーコンテナは何CPUを使用するのですか?

2022-04-27 21:12:39

質問

を実行しているとします。 マルチプロセシング サービスは、複数のプロセスを生成するドッカーコンテナの内部で、ドッカーはホストのすべての/複数のコア/CPUを使用するのでしょうか、それとも1つだけでしょうか?

解決方法は?

Charles が言及しているように、デフォルトではすべてを使用することができますが、コンテナごとに --cpuset-cpus パラメータを使用します。

docker run --cpuset-cpus="0-2" myapp:latest

そうすると、コンテナは3つのCPU(0,1,2)に制限されることになります。を参照してください。 docker run docs をご覧ください。


コンテナのCPU使用量を制限する方法としては、CPUの端数制限が望ましいです。

docker run --cpus 2.5 myapp:latest

そうすると、コンテナはホスト上で2.5コアに制限されます。


最後に、Docker for Mac、Docker for Windows、docker-machineを含むVM内でDockerを実行する場合、これらのVMはラップトップ自体とは別にCPUの制限を持ちます。DockerはそのVMの内部で実行され、VM自体に与えられたすべてのリソースを使用します。例:Docker for Macの場合、以下のようなメニューがあります。