community.docker.docker_machine inventory – Docker Machine 清单源
注意
此清单插件是 community.docker 集合(版本 4.1.0)的一部分。
如果您正在使用 ansible
包,则可能已经安装了此集合。它不包含在 ansible-core
中。要检查是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用:ansible-galaxy collection install community.docker
。您需要进一步的要求才能使用此清单插件,有关详细信息,请参阅要求。
要在 playbook 中使用它,请指定:community.docker.docker_machine
。
概要
从 Docker Machine 获取清单主机。
使用以
docker_machine.(yml|yaml)
结尾的 YAML 配置文件。该插件设置标准主机变量
ansible_host
、ansible_port
、ansible_user
和ansible_ssh_private_key
。该插件将 Docker Machine 的“env”输出变量存储在以
dm_
为前缀的主机变量中。
要求
在执行此清单的本地控制器节点上需要以下要求。
参数
参数 |
注释 |
---|---|
从 jinja2 表达式创建变量。 默认值: |
|
是否应获取 docker 守护程序连接环境变量,以及如果无法获取它们时应如何操作。 对于 对于 使用 如果成功获取,变量将以 选择
|
|
允许为此清单选择/取消选择主机的包含/排除过滤器列表。 过滤器按顺序处理,直到找到第一个 |
|
Jinja2 条件。如果它与主机匹配,则该主机将被排除。 只能指定 |
|
Jinja2 条件。如果它与主机匹配,则该主机将被包含。 只能指定 |
|
根据 Jinja2 条件将主机添加到组。 默认值: |
|
根据变量的值将主机添加到组。 默认值: |
|
当主机变量的值为空字符串时的默认值。 此选项与 |
|
用于生成组的输入字典中的键。 |
|
键组的父组。 |
|
键组的名称将以此前缀开头。 默认值: |
|
用于构建键组名称的分隔符。 默认值: |
|
将此选项设置为 此选项与 选择
|
|
与 默认情况下,没有提供前缀或分隔符的键组的名称将以下划线开头。 这是因为默认前缀为 如果未提供前缀,请将此选项设置为 如果组名是从映射派生的,则仍然使用分隔符连接项目。 要完全不在组名中使用分隔符,请将键组的分隔符设置为空字符串。 选择
|
|
确保这是 选择
|
|
当为 选择
|
|
如果为 由于可以在表达式中使用事实,因此它们可能并非始终可用,默认情况下我们会忽略这些错误。 选择
|
|
将额外的变量合并到可用于组合的变量中(优先级最高)。 选择
配置
|
|
当为 选择
|
注意
注意
配置文件必须是 YAML 文件,其文件名以
docker_machine.yml
或docker_machine.yaml
结尾。其他文件名将不被接受。
示例
# Minimal example
plugin: community.docker.docker_machine
# Example using constructed features to create a group per Docker Machine driver
# (https://docs.docker.net.cn/machine/drivers/), for example:
# $ docker-machine create --driver digitalocean ... mymachine
# $ ansible-inventory -i ./path/to/docker-machine.yml --host=mymachine
# {
# ...
# "digitalocean": {
# "hosts": [
# "mymachine"
# ]
# ...
# }
strict: false
keyed_groups:
- separator: ''
key: docker_machine_node_attributes.DriverName
# Example grouping hosts by Digital Machine tag
strict: false
keyed_groups:
- prefix: tag
key: 'dm_tags'
# Example using compose to override the default SSH behaviour of asking the user to accept the remote host key
compose:
ansible_ssh_common_args: '"-o StrictHostKeyChecking=accept-new"'