名称

podman-stop - 停止一个或多个正在运行的容器

概要

podman stop [选项] 容器

podman container stop [选项] 容器

描述

使用容器 ID 或名称作为输入停止一个或多个容器。--time 选项指定在向容器发出停止命令后强制停止容器之前等待的秒数。默认值为 10 秒。默认情况下,容器使用 SIGTERM 停止,然后在超时后使用 SIGKILL 停止。SIGTERM 默认值可以被用来创建容器的镜像覆盖,也可以在创建容器时通过命令行覆盖。

选项

--all, -a

停止所有正在运行的容器。这并不包括暂停的容器。

--cidfile=文件

从指定的文件中读取容器 ID 并停止该容器。可以多次指定。

文件不存在且用户指定了 --ignore 时,命令不会失败。

--filter, -f=过滤器

筛选要停止的容器。可以使用多个 --filter 标志来指定多个过滤器。具有相同键的过滤器以包含的方式工作,唯一的例外是 label,它是排他的。具有不同键的过滤器始终以排他的方式工作。

有效的过滤器列在下面

过滤器

描述

id

[ID] 容器的 ID(默认情况下是 CID 前缀匹配;接受正则表达式)

name

[名称] 容器的名称(接受正则表达式)

label

[键] 或 [键=值] 分配给容器的标签

exited

[整数] 容器的退出代码

status

[状态] 容器的状态:‘created’,‘exited’,‘paused’,‘running’,‘unknown’

ancestor

[镜像名称] 用于创建容器的镜像或后代

before

[ID] 或 [名称] 在此容器之前创建的容器

since

[ID] 或 [名称] 在此容器之后创建的容器

volume

[卷名称] 或 [挂载点目标] 挂载到容器中的卷

health

[状态] healthy 或 unhealthy

pod

[Pod] pod 的名称或完整或部分 ID

network

[网络] 网络的名称或完整 ID

until

[日期时间] 在给定持续时间或时间之前创建的容器。

--ignore, -i

当指定的容器不在容器存储中时忽略错误。用户可能已经决定手动删除一个容器,这会导致在引用该容器的 systemd 服务的 ExecStop 指令期间发生故障。

--latest, -l

不要提供容器名称或 ID,而是使用最后创建的容器。注意:最后一个启动的容器可能来自主机上其他 Podman 用户的容器。(此选项在远程 Podman 客户端不可用,包括 Mac 和 Windows(不包括 WSL2)机器)

--time, -t=秒数

强制停止容器之前等待的秒数。使用 -1 表示无限等待。

示例

通过其名称停止指定的容器。

$ podman stop mywebserver

通过其 ID 停止容器。

$ podman stop 860a4b235279

停止多个容器。

$ podman stop mywebserver 860a4b235279

停止 cidfile 中标识的容器。

$ podman stop --cidfile /home/user/cidfile-1

停止 cidfiles 中标识的容器。

$ podman stop --cidfile /home/user/cidfile-1 --cidfile ./cidfile-2

在 2 秒内停止指定的容器。

$ podman stop --time 2 860a4b235279

停止所有正在运行的容器。

$ podman stop -a

停止最后创建的容器(此选项在远程 Podman 客户端不可用,包括 Mac 和 Windows(不包括 WSL2)机器)

$ podman stop --latest

另请参见

podman(1), podman-rm(1)

历史记录

2018 年 9 月,最初由 Brent Baude 编写 bbaude@redhat.com