docker container restart
docker container restart
docker container restart는 하나 이상의 컨테이너를 재시작하는 명령이에요. 컨테이너를 멈췄다가 다시 시작하고 싶을 때 써요.
출처: 문서
본문
하나 이상의 컨테이너를 재시작해요.
사용법 (Usage)
docker container restart [OPTIONS] CONTAINER [CONTAINER...]
별칭 (Aliases)
별칭은 긴 명령 대신 쓸 수 있는 짧고 기억하기 쉬운 대안이에요.
docker restart
옵션 (Options)
| 옵션 | 기본값 | 설명 |
|---|---|---|
-s, --signal |
컨테이너에 보낼 신호예요 | |
-t, --timeout |
컨테이너를 종료하기 전에 기다릴 시간(초)이에요 |
예제 (Examples)
$ docker restart my_container
신호로 컨테이너 중지하기 (-s, --signal)
--signal 플래그는 컨테이너가 종료되도록 시스템 콜 신호를 보내요. 이 신호는 SIG<NAME> 형식의 신호 이름(예: SIGKILL)이거나, 커널의 syscall 테이블 위치에 해당하는 부호 없는 숫자(예: 9)일 수 있어요. 사용 가능한 신호는 signal(7)을 참고해요.
기본적으로 사용할 신호는 이미지의 StopSignal로 정의돼요. 이는 이미지를 빌드할 때 STOPSIGNAL Dockerfile 지시문으로 설정하거나, 컨테이너를 만들 때 --stop-signal 옵션으로 구성할 수 있어요. 컨테이너에 신호가 구성되지 않으면 기본으로 SIGTERM이 사용돼요.
제한 시간으로 컨테이너 중지하기 (-t, --timeout)
--timeout 플래그는 사전 정의된(--signal 참고) 시스템 콜 신호를 보낸 뒤 컨테이너가 중지할 때까지 기다릴 시간(초)을 설정해요. 제한 시간이 지나도 컨테이너가 종료되지 않으면 SIGKILL 신호로 강제 종료돼요. --timeout을 -1로 설정하면 제한 시간이 적용되지 않고 데몬이 컨테이너가 종료될 때까지 무기한 기다려요.
기본 제한 시간은 컨테이너를 만들 때 --stop-timeout 옵션으로 지정할 수 있어요. 컨테이너에 기본값이 구성되지 않으면 데몬이 결정하는데, Linux 컨테이너는 10초, Windows 컨테이너는 30초예요.