docker container update
docker container update
docker container update는 하나 이상의 컨테이너 구성을 동적으로 갱신하는 명령이에요. 실행 중인 컨테이너의 리소스 제한을 조정하고 싶을 때 써요.
출처: 문서
본문
docker update 명령은 컨테이너 구성을 동적으로 갱신해요. 이 명령으로 컨테이너가 Docker 호스트의 리소스를 너무 많이 소비하지 않게 막을 수 있어요. 단일 명령으로 하나 또는 여러 컨테이너에 제한을 둘 수 있어요. 컨테이너를 여러 개 지정하려면 컨테이너 이름이나 ID를 공백으로 구분한 목록을 제공해요.
경고:
docker update와docker container update명령은 Windows 컨테이너에서 지원되지 않아요.
사용법 (Usage)
docker container update [OPTIONS] CONTAINER [CONTAINER...]
별칭 (Aliases)
별칭은 긴 명령 대신 쓸 수 있는 짧고 기억하기 쉬운 대안이에요.
docker update
옵션 (Options)
| 옵션 | 기본값 | 설명 |
|---|---|---|
--blkio-weight |
블록 IO (상대 가중치)를 10에서 1000 사이로 정해요. 0이면 비활성화 (기본 0) | |
--cpu-period |
CPU CFS(Completely Fair Scheduler) 주기를 제한해요 | |
--cpu-quota |
CPU CFS(Completely Fair Scheduler) 할당량을 제한해요 | |
--cpu-rt-period |
API 1.25+ CPU 실시간 주기를 마이크로초 단위로 제한해요 | |
--cpu-rt-runtime |
API 1.25+ CPU 실시간 런타임을 마이크로초 단위로 제한해요 | |
-c, --cpu-shares |
CPU 공유 (상대 가중치) | |
--cpus |
API 1.29+ CPU 수예요 | |
--cpuset-cpus |
실행을 허용할 CPU (0-3, 0,1) |
|
--cpuset-mems |
실행을 허용할 MEM (0-3, 0,1) |
|
-m, --memory |
메모리 제한이에요 | |
--memory-reservation |
메모리 소프트 제한이에요 | |
--memory-swap |
메모리+스왑과 같은 스왑 제한이에요. -1이면 무제한 스왑 활성화 | |
--pids-limit |
API 1.40+ 컨테이너 pids 제한을 조절해요 (무제한은 -1) | |
--restart |
컨테이너가 종료될 때 적용할 재시작 정책이에요 |
예제 (Examples)
다음 섹션들은 이 명령을 쓰는 방법을 보여 줘요.
컨테이너의 cpu-shares 갱신하기 (--cpu-shares)
컨테이너의 cpu-shares를 512로 제한하려면, 먼저 컨테이너 이름이나 ID를 확인해요. docker ps로 이 값을 찾을 수 있고, docker run 명령이 반환한 ID를 쓸 수도 있어요. 그런 다음 이렇게 해요.
$ docker update --cpu-shares 512 abebf7571666
cpu-shares와 메모리로 컨테이너 갱신하기 (-m, --memory)
여러 컨테이너에 대해 여러 리소스 구성을 갱신하려면:
$ docker update --cpu-shares 512 -m 300M abebf7571666 hopeful_morse
컨테이너의 재시작 정책 갱신하기 (--restart)
실행 중인 컨테이너의 재시작 정책을 바꿀 수 있어요. docker update를 컨테이너에서 실행한 직후 새 재시작 정책이 즉시 적용돼요. 하나 이상의 컨테이너에 대한 재시작 정책을 갱신하려면:
$ docker update --restart=on-failure:3 abebf7571666 hopeful_morse
컨테이너가 --rm 플래그로 시작된 경우 재시작 정책을 갱신할 수 없다는 점에 주의해요. 컨테이너의 AutoRemove와 RestartPolicy는 서로 배타적이에요.