2015-09-13 14 views
5

私は、ホストマシン上のすべてのCPUを使用するように私のドッキングウィンドウコンテナを伝えるために、次の恐ろしい構文を使用しています:少ない厄介な方法:

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

は良い方法はあります?

+2

'getconfの_NPROCESSORS_ONLN'はそれを行うための最短の方法かもしれない$と、二重括弧で行われ、私はそれがPOSIXだと信じてOS XとLinuxで動作するはずです。 [関連する質問](http://stackoverflow.com/questions/19619582/get-the-number-of-processors-cores-in-command-line) –

+0

*すべての* CPUを使用する場合は、 'cpu_count() - 1'ではなく' cpu_count() 'ではなく? –

答えて

1

を使用すると、CPUコアの数を返すことができます。 CPUコアの数を取得するために

から1は、POSIXシェルで算術

docker run --cpuset-cpus="0-$(($(nproc)-1))" ubuntu:latest echo "hi" 
関連する問題