Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/393.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Docker 如何指定容器将使用的CPU数量?_Docker_Docker For Windows - Fatal编程技术网

Docker 如何指定容器将使用的CPU数量?

Docker 如何指定容器将使用的CPU数量?,docker,docker-for-windows,Docker,Docker For Windows,我正在Windows Server 2019上工作,并尝试在其上运行CentOS的docker容器。我正在运行以下程序: PS C:\Windows\system32> docker run -dit --name=testing23 --cpu-shares=12 raycentos:1.0 6a3ffb86c1d9509a9d80f0de54fc6acf5731ca645ee74e6aabe41d7153b3af70 PS C:\Windows\system32> dock

我正在Windows Server 2019上工作,并尝试在其上运行CentOS的docker容器。我正在运行以下程序:

PS C:\Windows\system32> docker run -dit --name=testing23 --cpu-shares=12    raycentos:1.0
6a3ffb86c1d9509a9d80f0de54fc6acf5731ca645ee74e6aabe41d7153b3af70
PS C:\Windows\system32> docker exec -it 6a3ffb86c1d9509a9d80f0de54fc6acf5731ca645ee74e6aabe41d7153b3af70 bash
(app-root) bash-4.2# nproc
2

它仍然只指定2,而不是32。如何为容器分配更多CPU?

有关详细信息,请参阅本主题

您必须添加具有适当标志的值

尝试:

--CPU=容器可以使用的最大CPU资源
--cpuset CPU=12

默认情况下,可以使用all,也可以使用
--cpuset cpus
参数对每个容器进行限制

docker run --cpuset-cpus="0-2" myapplication:latest
这会将容器限制为3个CPU(0、1和2)。有关更多详细信息,请参阅

选择的限制容器CPU使用的方法是对CPU进行分数限制:

docker run --cpus 2.5 myapplication:latest

你是对的,我删除了我的评论并更新了您的答案。不起作用C:\Windows\system32>docker run-dit--name=testing23--cpus=12--cpuset cpus=12 raycentos:1.0 C:\Program Files\docker\docker.exe:来自后台程序的错误响应:无效选项:Windows不支持CpusetCpus。请参阅“C:\Program Files\Docker\Docker.exe运行--帮助”。PS C:\Windows\system32>不工作C:\Windows\system32>docker run-dit--name=testing23--cpus=12--cpuset-cpus=12 raycentos:1.0 C:\Program Files\docker\docker.exe:守护进程的错误响应:无效选项:Windows不支持CpusetCpus。请尝试此docker运行-it--name=testing23--cpus=12I这样做了。。它运行,但当我检查时,仍然看到2个CPU(应用程序根)bash-4.2#nproc 2Try this--cpu=2.5并选中PS C:\Windows\system32>docker run-dit--name=testing23--cpu=2.5 raycentos:1.0 BA29040CBDD2ED3ED195AAAC53504758DE7B3156DDED249AD00809ACC0BC PS C:\Windows\system32>docker exec-it BA29040CBDD3ED195AAAC53758DE7B3156DDED249AD00809ACC0BC bash(应用根)bash-4.2#
docker run --cpus 2.5 myapplication:latest