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초예요.

더 알아보기 (Learn more)