跳到主要内容

Podman Pod Kill 命令详解

简介

podman pod kill 命令用于向指定 Pod 中的每个容器的主进程发送 SIGKILL 信号(或指定的其他信号),以终止这些容器。这通常用于在需要强制停止 Pod 及其内部容器时使用。

语法

podman pod kill [*options*] Pod名称或ID...

选项

--all, -a

向与 Pod 关联的所有容器发送信号。如果不指定此选项,则仅发送信号给 Pod 中的主容器。

--latest

发送信号给最新的 Pod。注意,此选项在远程 Podman 客户端(包括 Mac 和 Windows,不包括 WSL2)上不可用。

--signal-s

指定要发送的信号。默认为 SIGKILL,但可以使用其他信号名称或数字。例如,--signal TERM 将发送 TERM 信号,这通常允许容器正常退出。

示例

示例 1:按名称杀死 Pod

podman pod kill mywebserver

此命令将向名为 mywebserver 的 Pod 中的每个容器发送 SIGKILL 信号。

示例 2:按 ID 杀死 Pod

podman pod kill 860a4b23

通过指定 Pod 的 ID 860a4b23,此命令将发送 SIGKILL 信号给该 Pod 中的容器。

示例 3:发送 TERM 信号

podman pod kill --signal TERM 860a4b23

使用 --signal 选项发送 TERM 信号而不是默认的 SIGKILL。这将允许容器有机会正常清理并退出。

示例 4:杀死最新的 Pod

podman pod kill --latest

此命令将发送 SIGKILL 信号给最新的 Pod。注意,此选项在远程 Podman 客户端上不可用。

示例 5:杀死所有 Pod

podman pod kill --all

使用 --all 选项,此命令将向系统上所有 Pod 中的容器发送 SIGKILL 信号。

相关命令

历史

该命令和文档最初由Peter Hunt 在 2018 年 7 月编写。

注意事项

  • 使用 podman pod kill 命令时要小心,因为它会强制终止容器,可能导致数据丢失或状态不一致。
  • 在发送 SIGKILL 信号之前,容器不会有机会进行清理操作,因此应该尽量避免在生产环境中频繁使用此命令。
  • 如果 Pod 中包含多个容器,并且只希望杀死特定容器,那么可能需要使用 podman exec 命令结合 kill 命令来针对特定容器执行操作。