docker container kill

docker container kill

docker container kill은 하나 이상의 실행 중인 컨테이너를 종료시키는 명령이에요. 컨테이너의 메인 프로세스에 신호를 보내 즉시 종료하고 싶을 때 써요.

출처: 문서

본문

docker kill 하위 명령은 하나 이상의 컨테이너를 종료해요. 컨테이너 안의 메인 프로세스에 SIGKILL 신호(기본값) 또는 --signal 옵션으로 지정한 신호를 보내요. 컨테이너는 ID, ID 접두사 또는 이름으로 참조할 수 있어요.

--signal 플래그는 컨테이너에 보내는 시스템 콜 신호를 설정해요. 이 신호는 SIG<NAME> 형식의 신호 이름(예: SIGINT)이거나, 커널의 syscall 테이블 위치에 해당하는 부호 없는 숫자(예: 2)일 수 있어요.

기본 신호(SIGKILL)는 컨테이너를 종료시키지만, --signal로 설정한 신호는 컨테이너의 메인 프로세스에 따라 종료되지 않을 수도 있어요. 예를 들어 SIGHUP 신호는 대부분의 경우 종료시키지 않고, 컨테이너는 신호를 받은 뒤에도 계속 실행돼요.

참고: shell 형식의 ENTRYPOINT와 CMD는 /bin/sh -c의 자식 프로세스로 실행되는데, 이는 신호를 전달하지 않아요. 즉 실행 파일이 컨테이너의 PID 1이 아니므로 Unix 신호를 받지 못해요.

사용법 (Usage)

docker container kill [OPTIONS] CONTAINER [CONTAINER...]

별칭 (Aliases)

별칭은 긴 명령 대신 쓸 수 있는 짧고 기억하기 쉬운 대안이에요.

docker kill

옵션 (Options)

옵션 기본값 설명
-s, --signal 컨테이너에 보낼 신호예요

예제 (Examples)

컨테이너에 KILL 신호 보내기

다음 예제는 my_container라는 컨테이너에 기본 SIGKILL 신호를 보내요.

$ docker kill my_container

컨테이너에 사용자 지정 신호 보내기 (--signal)

다음 예제는 my_container라는 컨테이너에 SIGHUP 신호를 보내요.

$ docker kill --signal=SIGHUP  my_container

사용자 지정 신호는 이름이나 숫자로 지정할 수 있고, SIG 접두사는 선택사항이라 다음 예제들은 모두 동일해요.

$ docker kill --signal=SIGHUP my_container
$ docker kill --signal=HUP my_container
$ docker kill --signal=1 my_container

표준 Linux 신호 목록은 signal(7) 매뉴얼 페이지를 참고해요.

더 알아보기 (Learn more)