containers.podman.podman_container_exec 模块 – 在运行的容器中执行命令。
注意
此模块是 containers.podman 集合(版本 1.16.2)的一部分。
如果您使用的是 ansible
包,您可能已经安装了此集合。它不包含在 ansible-core
中。要检查它是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用:ansible-galaxy collection install containers.podman
。您需要进一步的要求才能使用此模块,有关详细信息,请参阅要求。
要在 playbook 中使用它,请指定:containers.podman.podman_container_exec
。
概要
在运行的容器中执行命令。
要求
以下要求需要在执行此模块的主机上满足。
podman
参数
参数 |
注释 |
---|---|
将命令作为列表而不是字符串传递。 需要 command 或 args 之一。 |
|
要在容器中运行的命令。 需要 command 或 args 之一。 |
|
如果为 true,则命令在后台运行。 执行会话在完成后会自动删除。 选择
|
|
设置环境变量。 |
|
podman 可执行文件的路径。 默认值: |
|
在其中执行命令的容器的名称。 |
|
向容器授予扩展权限。 选择
|
|
分配一个伪 TTY。 选择
|
|
用于指定命令的用户名或 UID,以及可选的组名或 GID。 用户和组都可以是符号或数字。 |
|
容器内的工作目录。 |
注释
注意
有关 podman-exec(1) 的详细信息,请参阅Podman 文档。
示例
- name: Execute a command with workdir
containers.podman.podman_container_exec:
name: ubi8
command: "cat redhat-release"
workdir: /etc
- name: Execute a command with a list of args and environment variables
containers.podman.podman_container_exec:
name: test_container
argv:
- /bin/sh
- -c
- echo $HELLO $BYE
env:
HELLO: hello world
BYE: goodbye world
- name: Execute command in background by using detach
containers.podman.podman_container_exec:
name: detach_container
command: "cat redhat-release"
detach: true
返回值
常见的返回值在此处文档中记录,以下是此模块特有的字段
键 |
描述 |
---|---|
执行会话的 ID。 已返回:成功并且 detach=true 示例: |
|
在容器中执行的命令的退出代码。 已返回:成功 示例: |
|
在容器中执行的命令的标准错误输出。 已返回:成功 |
|
在容器中执行的命令的标准错误输出。 已返回:成功 |