도커 컨테이너의 경우 docker run
에 CPU 한도 (예 : --cpu-quota
--cpu-shares
)와 메모리 한도 (--memory
)를 설정할 수 있습니다. --ulimit
을 통해 사용자에 대해 전체 nproc
제한을 설정할 수도 있습니다.개별 사용자 용 도킹 컨테이너의 리소스 제한
다른 두 명의 사용자가 한 컨테이너에서 작업 부하를 실행하고 있다고 가정 해 봅니다. 하나의 특정 도커 컨테이너 내부에서만 개별 사용자에 대한 제한을 설정하는 방법이 있습니까 (시스템 전체가 아님)?
예를 들어 --ulimit nproc=100
을 사용하면 사용자가 도커 컨테이너 내부에서 최대 n 개의 프로세스를 정확히 실행할 수 있도록 지정할 수 없습니다. 예를 들어, 사용자가 이미 컨테이너 외부에서 40 개의 프로세스를 실행중인 경우, 컨테이너 내부에서 60 개의 프로세스를 실행할 수 있습니다. ulimit nproc=40
을 설정하고 40 개의 프로세스가 컨테이너 외부에서 실행되도록 설정하면 컨테이너 내부에서 새 프로세스를 시작할 수 없습니다.
그렇다면 개별 도커 컨테이너에 대해 CPU, 메모리 및 프로세스 수 제한을 적용 할 수있는 방법을 찾고 있습니다. 이러한 제한이없는 다른 도커 컨테이너가 동일한 시스템에서 실행중인 경우에도 마찬가지입니다. 각 사용자에 대한 도커 컨테이너 시작 옵션이 아닙니다.
이렇게하면 두 개의 컨테이너가 시작됩니다. 시나리오에서는 한 컨테이너에 여러 사용자가 있습니다. –