名称¶
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 |
[名称] 容器的名称(接受正则表达式) |
annotation |
[Key] 或 [Key=Value] 分配给容器的注解 |
annotation! |
[Key] 或 [Key=Value] 未分配给容器的注解 |
label |
[键] 或 [键=值] 分配给容器的标签 |
label! |
[Key] 或 [Key=Value] 未分配给容器的标签 |
exited |
[整数] 容器的退出代码 |
status |
[Status] 容器状态:‘created’(已创建)、‘initialized’(已初始化)、‘running’(运行中)、‘stopped’(已停止)、‘paused’(已暂停)、‘exited’(已退出)、‘removing’(移除中)、‘stopping’(停止中)、‘unknown’(未知) |
ancestor |
[ImageName] 用于创建容器的镜像或后代镜像(支持正则表达式) |
before |
[ID] 或 [名称] 在此容器之前创建的容器 |
since |
[ID] 或 [名称] 在此容器之后创建的容器 |
volume |
[卷名称] 或 [挂载点目标] 挂载在容器中的卷 |
health |
[状态] healthy 或 unhealthy |
pod |
[Pod] pod 的名称或完整或部分 ID |
network |
[网络] 网络的名称或完整 ID |
restart-policy |
[Policy] 容器的重启策略(例如:‘no’、‘on-failure’、‘always’、‘unless-stopped’) |
until |
[DateTime] 在给定持续时间或时间之前创建的容器。 |
command |
[命令] 容器正在执行的命令,只取 argv[0] |
should-start-on-boot |
[Bool] 系统重启后需要重启的容器。对于重启策略为 ‘always’ 或 ‘unless-stopped’ 且未被用户明确停止的容器,该值为 True |
--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
停止多个 cidfile 中标识的容器。
$ 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 stop --filter label=app=frontend
9351ccb3ef4272532bc0c188bd4f0ddfc2b0de217732cd108259ea126b014647
按名称停止。
$ podman stop --filter name=db-replica
6c2680da61d54690718ac3aecdb04a8aad95ae353e42cc942736823bd05c8a1d
按角色标签停止。
$ podman stop --filter label=role=primary
bb3ff91d969a8dc622d627e4a8d76c18bdbd417d317c5e7e66543c0b0c8ed1e8
另请参阅¶
历史¶
2018 年 9 月,由 Brent Baude bbaude@redhat.com 整理