Docker Compose CPU 사용 상한 미설정

서비스 부하에 맞는 CPU 상한을 지정하세요.

설명

CPU 사용 상한이 없으면 컨테이너가 사용 가능한 CPU 용량을 과도하게 소모할 수 있습니다. CPU 예약량은 최대 사용량을 제한하는 값과 다릅니다.

잠재적 영향

부하가 큰 서비스 때문에 같은 호스트의 다른 서비스가 느려지거나 응답하지 못할 수 있습니다.

해결 방법

deploy.resources.limits.cpus 등 실행 환경이 지원하는 CPU 제한을 설정하고 실제 적용 여부를 확인하세요. 부하 시험으로 필요한 처리량과 제한값을 맞추세요.

예시

CPU 상한 0.3개와 예약량 0.1개를 지정하는 예시입니다. example/app은 실제 이미지로 바꾸고, 사용하는 Compose 실행 환경의 deploy 지원을 확인하세요.

변경 전

yaml
version: "3.7"
services:
  app:
    image: example/app
    deploy:
      resources:
        limits:
          memory: 256M
        reservations:
          cpus: "0.1"

변경 후

yaml
version: "3.7"
services:
  app:
    image: example/app
    deploy:
      resources:
        limits:
          cpus: "0.3"
          memory: 256M
        reservations:
          cpus: "0.1"
          memory: 128M

참조