在Docker容器中使用所有可用CPU的方法不那么笨拙:

时间:2015-09-13 22:54:10

标签: docker

我使用以下可怕的语法告诉我的docker容器使用主机上的所有CPU:

docker run  --cpuset-cpus="0-`python3 -c "from multiprocessing import cpu_count; print(cpu_count() -1)"`" ubuntu:latest /bin/bash

有更好的方法吗?

1 个答案:

答案 0 :(得分:1)

您可以使用nproc返回CPU核心数。

为了获得CPU核心的数量 - 1,POSIX shell中的算术用$和双括号

完成
docker run --cpuset-cpus="0-$(($(nproc)-1))" ubuntu:latest echo "hi"