community.docker.docker_stack 模块 – docker stack 模块
注意
此模块是 community.docker 集合 (版本 4.1.0) 的一部分。
如果您使用的是 ansible
包,则可能已经安装了此集合。它不包含在 ansible-core
中。要检查它是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用:ansible-galaxy collection install community.docker
。您需要其他要求才能使用此模块,有关详细信息,请参阅 要求。
要在 playbook 中使用它,请指定:community.docker.docker_stack
。
概要
使用目标节点上的
docker stack
命令管理 docker stack(参见示例)。
要求
执行此模块的主机需要以下要求。
Docker 命令行工具
docker
jsondiff
pyyaml
参数
参数 |
注释 |
---|---|
如果大于 默认值: |
|
连续 默认值: |
|
Docker 主机上运行的 Docker API 的版本。 默认为此集合和 docker 守护程序支持的最新 API 版本。 如果任务中未指定此值,则将使用环境变量 默认值: |
|
通过提供 CA 证书文件的路径来执行服务器验证时使用 CA 证书。 如果任务中未指定此值并且环境变量 |
|
要使用的 Docker CLI 上下文。 与 |
|
客户端 TLS 证书文件的路径。 如果任务中未指定此值并且环境变量 |
|
客户端TLS密钥文件的路径。 如果任务中未指定此值,并且环境变量 |
|
Compose定义列表。任何元素都可以是字符串,引用目标主机上compose文件的路径,也可以是嵌套为字典的compose文件的YAML内容。 默认值: |
|
如果为 如果为 选项
|
|
Docker CLI 的路径。如果未提供,将在 |
|
用于连接到Docker API的URL或Unix套接字路径。要连接到远程主机,请提供TCP连接字符串。例如, 如果任务中未指定此值,则将使用环境变量 与 |
|
堆栈名称 |
|
如果为true,则会将 选项
|
|
如果设置,则会将 选项
|
|
服务状态。 选项
|
|
通过使用TLS安全地连接到API,而无需验证Docker主机服务器的真实性。请注意,如果 如果任务中未指定此值,则将使用环境变量 选项
|
|
验证Docker主机服务器的真实性时,请提供服务器的预期名称。 如果任务中未指定此值,则将使用环境变量 |
|
通过使用TLS并验证Docker主机服务器的真实性来保护与API的连接。 如果任务中未指定此值,则将使用环境变量 选项
|
|
如果为true,则会将 选项
|
属性
属性 |
支持 |
描述 |
---|---|---|
动作组: community.docker.docker, docker 在 community.docker 3.6.0 中添加 |
在 |
|
支持: 不支持 |
可以在 |
|
支持: 不支持 |
在差异模式下,将返回有关已更改内容(或在 |
备注
注意
通过为每个任务提供参数或定义环境变量来连接到Docker守护程序。您可以定义
DOCKER_HOST
,DOCKER_TLS_HOSTNAME
,DOCKER_API_VERSION
,DOCKER_CERT_PATH
,DOCKER_TLS
,DOCKER_TLS_VERIFY
和DOCKER_TIMEOUT
。如果您正在使用docker machine,请运行产品附带的设置环境的脚本。它将为您设置这些变量。有关更多详细信息,请参见https://docs.docker.net.cn/machine/reference/env/。此模块**不**使用Docker SDK for Python与Docker守护程序通信。它直接调用Docker CLI程序。
示例
- name: Deploy stack from a compose file
community.docker.docker_stack:
state: present
name: mystack
compose:
- /opt/docker-compose.yml
- name: Deploy stack from base compose file and override the web service
community.docker.docker_stack:
state: present
name: mystack
compose:
- /opt/docker-compose.yml
- version: '3'
services:
web:
image: nginx:latest
environment:
ENVVAR: envvar
- name: Remove stack
community.docker.docker_stack:
name: mystack
state: absent
返回值
常用的返回值已在此处记录此处,以下是此模块独有的字段
键 |
描述 |
---|---|
包含应用新堆栈定义前后堆栈服务的“Spec”字段之间差异的字典。 返回: 发生更改时 示例: |