도커 컨테이너는 몇 개의 CPU를 사용합니까?
여러 프로세스를 생성하는 도커 컨테이너 내에서 멀티프로세싱 서비스를 실행하고 있다고 가정해 보겠습니다. 도커가 호스트의 모든/여러 코어/CPU를 사용할 것인지 아니면 하나만 사용할 것인지를 결정합니다.
Charles가 언급했듯이, 기본적으로 모든 것을 사용할 수 있습니다. 또는 다음을 사용하여 컨테이너별로 제한할 수 있습니다.--cpuset-cpus
매개 변수
docker run --cpuset-cpus="0-2" myapp:latest
그러면 컨테이너가 CPU 3개(0, 1, 2)로 제한됩니다.자세한 내용은 도커 실행 문서를 참조하십시오.
컨테이너의 CPU 사용량을 제한하는 기본 방법은 CPU에 대한 부분 제한입니다.
docker run --cpus 2.5 myapp:latest
그러면 호스트의 컨테이너가 2.5 코어로 제한됩니다.
마지막으로 Mac용 도커, 윈도우즈용 도커 및 도커 시스템을 포함한 VM 내에서 도커를 실행하는 경우 이러한 VM은 랩톱 자체와 별도로 CPU 제한을 갖습니다.도커는 해당 VM 내부에서 실행되며 VM 자체에 제공된 모든 리소스를 사용합니다.예를 들어 Mac용 Docker의 경우 다음과 같은 메뉴가 있습니다.
호스트 VM에는 기본적으로 코어가 하나만 있을 수 있습니다.따라서 먼저 VM CPU 수를 늘린 다음 --cpuset-cpus 옵션을 사용하여 도커 코어를 늘려야 합니다.다음 명령을 사용하여 도커 기본 VM을 제거한 다음 선택적인 CPU 수 및 메모리 크기를 사용하여 다른 VM을 생성할 수 있습니다.
docker-machine rm default
docker-machine create -d virtualbox --virtualbox-cpu-count=8 --virtualbox-memory=4096 --virtualbox-disk-size=50000 default
이 단계가 끝나면 이미지를 실행하기 전에 코어 수를 지정할 수 있습니다.이 명령은 총 8개 코어 중 4개 코어를 사용합니다.
docker run -it --cpuset-cpus="0-3" your_image_name
그런 다음 다음 명령을 사용하여 이미지에서 사용 가능한 코어 수를 확인할 수 있습니다.
nproc
언급URL : https://stackoverflow.com/questions/37871540/how-many-cpus-does-a-docker-container-use
'programing' 카테고리의 다른 글
"AutoSize"를 Excel 시트 열로 설정하는 방법(NPOI) (0) | 2023.08.07 |
---|---|
어떻게 하면 디브가 남은 수평 공간을 채우게 할 수 있습니까? (0) | 2023.08.07 |
현재 실행 중인 PowerShell 스크립트의 경로 (0) | 2023.08.07 |
SQL*Plus는 SQL Developer가 실행하는 SQL 스크립트를 실행하지 않습니다. (0) | 2023.08.07 |
.env 값을 즉시 프로그래밍 방식으로 라벨로 설정하는 방법 (0) | 2023.08.07 |