community.docker.docker 连接 - 在 Docker 容器中运行任务

注意

此连接插件是 community.docker 集合(版本 4.1.0)的一部分。

如果您正在使用 ansible 包,您可能已经安装了这个集合。 它不包含在 ansible-core 中。 要检查它是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用: ansible-galaxy collection install community.docker

要在 playbook 中使用它,请指定:community.docker.docker

概要

  • 在现有的 Docker 容器中运行命令或放入/获取文件。

  • 使用 Docker CLI 在容器中执行命令。 如果您更喜欢直接连接到 Docker 守护程序,请使用 community.docker.docker_api 连接插件。

参数

参数

注释

container_timeout

整数

控制我们可以在执行开始后等待多长时间才能访问从容器读取的输出。

默认值: 10

配置

  • INI 条目

    [defaults]
    timeout = 10
    
    [docker_connection]
    timeout = 10
    

    在 community.docker 2.2.0 中添加

  • 环境变量: ANSIBLE_TIMEOUT

  • 环境变量: ANSIBLE_DOCKER_TIMEOUT

    在 community.docker 2.2.0 中添加

  • 变量:ansible_docker_timeout

    在 community.docker 2.2.0 中添加

  • CLI 参数:--timeout

docker_extra_args

字符串

要传递给 docker 命令行的额外参数。

默认值: ""

配置

  • INI 条目

    [docker_connection]
    extra_cli_args = ""
    
  • 变量:ansible_docker_extra_args

extra_env

字典

在 community.docker 3.12.0 中添加

提供在 Docker 容器中运行命令时要设置的额外环境变量。

由于 ansible-core 配置管理器的限制,此选项目前只能作为 Ansible 变量提供。

配置

  • 变量:ansible_docker_extra_env

privileged

布尔值

在 community.docker 3.12.0 中添加

是否应该使用扩展权限运行命令。

注意 这允许命令潜在地突破容器。 请谨慎使用!

选择

  • false ←(默认)

  • true

配置

  • INI 条目

    [docker_connection]
    privileged = false
    
  • 环境变量: ANSIBLE_DOCKER_PRIVILEGED

  • 变量:ansible_docker_privileged

remote_addr

字符串

您要访问的容器的名称。

默认值: "inventory_hostname"

配置

  • 变量:inventory_hostname

  • 变量:ansible_host

  • 变量:ansible_docker_host

remote_user

字符串

要在容器内执行的用户。

如果 Docker 太旧而无法允许这样做(< 1.7),则将使用 Docker 本身设置的用户。

配置

  • INI 条目

    [defaults]
    remote_user = VALUE
    
  • 环境变量: ANSIBLE_REMOTE_USER

  • 变量:ansible_user

  • 变量:ansible_docker_user

  • 关键字:remote_user

  • CLI 参数:--user

working_dir

字符串

在 community.docker 3.12.0 中添加

在其中运行命令的容器内的目录。

需要 Docker CLI 版本 18.06 或更高版本。

配置

  • INI 条目

    [docker_connection]
    working_dir = VALUE
    
  • 环境变量: ANSIBLE_DOCKER_WORKING_DIR

  • 变量:ansible_docker_working_dir

作者

  • Lorin Hochestein

  • Leendert Brouwer

提示

每个条目类型的配置条目都有从低到高的优先级顺序。 例如,列表中较低的变量将覆盖较高的变量。