跳到主要内容

podman unpause - 取消暂停一个或多个容器

概要

podman unpause [options]|[container ...]

podman container unpause [options]|[container ...]

描述

取消暂停一个或多个容器中的进程。可以使用容器ID或名称作为输入。

选项

--all, -a

取消暂停所有暂停的容器。

--cidfile.read

(此选项未给出详细描述,可能是未完全列出的选项或特定于特定版本的选项。)

--filter, -f=filter

筛选要取消暂停的容器。 可以使用多个 --filter 标志来指定多个过滤器。 具有相同键的过滤器是包含性的,唯一的例外是 label 过滤器,它是排他性的。具有不同键的过滤器总是排他性的。

详细解释

--all 或 -a: 使用此选项时,podman 会取消暂停所有当前处于暂停状态的容器,而不仅仅是通过命令行参数指定的容器。

--filter 或 -f: 此选项允许你基于特定条件筛选要取消暂停的容器。这在你只想对满足特定条件的容器执行操作时非常有用。

过滤器可以使用多种键值对,如:

  • id:容器的ID。
  • name:容器的名称。
  • label:容器的标签。
  • status:容器的状态(例如 pausedrunning 等)。

使用过滤器时,可以多次使用 --filter 标志,以应用多个条件。这些条件默认是包含性的,这意味着满足任一条件的容器都会被选中,除非使用了排他性的过滤器,如 label

对于 label 过滤器,它是排他性的,意味着只有完全匹配该标签的容器才会被选中。如果使用了多个 label 过滤器,则这些条件必须全部满足。

如果使用了具有不同键的过滤器,它们会按排他性方式工作,即只有满足所有条件的容器才会被选中。

示例

取消暂停所有暂停的容器:

podman unpause --all

取消暂停名为 mycontainer 的容器:

podman unpause mycontainer

使用过滤器取消暂停所有标签为 myproject 的容器:

podman unpause --filter label=myproject

使用多个过滤器取消暂停所有名为 web 并且状态为 paused 的容器:

podman unpause --filter name=web --filter status=paused

注意:在实际使用时,请确保你了解每个过滤器的具体语法和规则,并根据你的需求适当组合它们。

以下是有效的过滤器的列表及其详细说明:

过滤器描述
id容器ID(CID)的匹配,默认为前缀匹配,也接受正则表达式。通过此过滤器,你可以按容器的唯一标识符来筛选容器。
name容器的名称,接受正则表达式。使用此过滤器,你可以通过容器的名称来筛选容器。
label分配给容器的标签,可以是键或键值对的形式。这允许你根据容器上设置的标签来筛选容器。
exited容器的退出代码。使用这个过滤器,你可以找出以特定退出代码退出的容器。
status容器的状态,包括:'created'(已创建)、'exited'(已退出)、'paused'(已暂停)、'running'(运行中)、'unknown'(未知)。你可以通过这个过滤器筛选出具有特定状态的容器。
ancestor用于创建容器的镜像或其子镜像的名称。这个过滤器可以帮助你找到基于特定镜像或其子镜像创建的容器。
before在指定容器之前创建的容器。你可以使用这个过滤器来找到在特定容器之前创建的所有容器。
since在指定容器之后创建的容器。使用这个过滤器,你可以找到在特定容器之后创建的所有容器。
volume在容器中挂载的卷的名称或挂载点目标。通过这个过滤器,你可以筛选出挂载了特定卷的容器。
health容器的健康状态,可以是 'healthy'(健康)或 'unhealthy'(不健康)。这个过滤器允许你根据容器的健康状态进行筛选。
podpod的名称或完整或部分ID。使用这个过滤器,你可以找到属于特定pod的容器。
network网络的名称或完整ID。通过这个过滤器,你可以筛选出连接到特定网络的容器。
until在给定时间之前创建的容器。你可以使用此过滤器来找到在特定日期时间之前创建的所有容器。这个过滤器通常与日期时间字符串一起使用,以便进行时间范围的筛选。
--latest该选项通常不是作为一个过滤器使用,而是作为一个标志,用于获取最新的容器或镜像。例如,当使用 podman images --latest 时,它会显示最新的镜像。在使用 podman ps --latest 时,它可能会显示最新创建的容器。这个选项的具体行为可能因podman的版本和上下文而异。

请注意,这些过滤器的具体语法和行为可能因podman的版本和特定上下文而有所不同。因此,在使用这些过滤器时,建议查阅最新的podman文档或运行 podman --help 来获取最准确的信息。

*示例

取消暂停指定的容器:

podman unpause mywebserver

通过容器的部分ID取消暂停容器:

podman unpause 860a4b23

取消暂停所有已暂停的容器:

podman unpause --all

使用给定文件中指定的ID取消暂停容器:

podman unpause --cidfile /home/user/cidfile-1
podman unpause --cidfile /home/user/cidfile-1 --cidfile ./cidfile-2

取消暂停最新的容器。(此选项不适用于远程Podman客户端,包括Mac和Windows(不包括WSL2)机器):

podman unpause --latest

另请参阅

podman(1), podman-pause(1)

历史

2017年9月,最初由Dan Walsh整理。


以上内容是对podman unpause命令的使用示例、相关命令和历史的简要说明。podman unpause命令用于取消暂停一个或多个容器。通过不同的选项和参数,用户可以指定要取消暂停的容器。如果需要在具体的Podman版本或环境中使用此命令,建议查阅相应版本的官方文档以获取更详细和准确的信息。