docker container stop
描述 | 停止一个或多个正在运行的容器 |
---|---|
用法 | docker container stop [OPTIONS] CONTAINER [CONTAINER...] |
别名 | docker stop |
描述
容器内的主进程将收到SIGTERM
信号,并在一段宽限期后收到SIGKILL
信号。第一个信号可以通过容器Dockerfile中的STOPSIGNAL
指令,或docker run
和docker create
命令的--stop-signal
选项来更改。
选项
选项 | 默认值 | 描述 |
---|---|---|
-s, --signal | 发送到容器的信号 | |
-t, --time | 在终止容器之前等待的秒数 |
示例
$ docker stop my_container
使用信号停止容器 (-s, --signal)
--signal
标志将系统调用信号发送到容器以使其退出。此信号可以是格式为SIG<NAME>
的信号名称,例如SIGKILL
,或者与内核系统调用表中的位置匹配的无符号数字,例如9
。请参考signal(7)了解可用的信号。
使用的默认信号由镜像的StopSignal
定义,可以通过构建镜像时的STOPSIGNAL
Dockerfile指令设置,或者在创建容器时使用--stop-signal
选项配置。如果未为容器配置信号,则默认使用SIGTERM
。
使用超时停止容器 (-t, --timeout)
--time
标志设置发送预定义(参见[--signal
]{#signal})系统调用信号后等待容器停止的秒数。如果容器在超时后仍未退出,则将使用SIGKILL
信号强制终止它。
如果将--time
设置为-1
,则不应用超时,守护进程将无限期地等待容器退出。
可以使用创建容器时的--stop-timeout
选项指定默认超时。如果未为容器配置默认值,则守护进程将确定默认值,对于Linux容器为10秒,对于Windows容器为30秒。