从ansible剧本中执行docker撰写
我在执行从ansible playbook内部调用的从ansible剧本中执行docker撰写,ansible,Ansible,我在执行从ansible playbook内部调用的docker compose时遇到问题,我尝试了几种方法,但都给了我一个错误: 1. docker_service: project_src: /test/docker/ command: docker-compose -f {{ name }}_compose.yml up -d docker_service: project_src: /test/docker/ fi
docker compose
时遇到问题,我尝试了几种方法,但都给了我一个错误:
1.
docker_service:
project_src: /test/docker/
command: docker-compose -f {{ name }}_compose.yml up -d
docker_service:
project_src: /test/docker/
files:
src: "{{ name }}_compose.yml"
state: present
2.
docker_service:
project_src: /test/docker/
command: docker-compose -f {{ name }}_compose.yml up -d
docker_service:
project_src: /test/docker/
files:
src: "{{ name }}_compose.yml"
state: present
错误多种多样:
FAILED! => {"changed": false, "msg": "Failed to import docker or docker-py - No module named 'requests'. Try `pip install docker` or `pip install docker-py` (Python 2.6)"}
FAILED! => {"changed": false, "msg": "Unsupported parameters for (docker_service) module: command Supported parameters include: api_version, build, cacert_path, cert_path, debug, definition, dependencies, docker_host, files, hostname_check, key_path, nocache, project_name, project_src, pull, recreate, remove_images, remove_orphans, remove_volumes, restarted, scale, services, ssl_version, state, stopped, timeout, tls, tls_hostname, tls_verify"}
我做错了什么?下面的任务应该启动您的撰写文件
- name: Deploy docker compose
docker_compose:
project_src: /test/docker/
files:
- "./{{ name }}_compose.yml"
state: present
看起来您没有安装在Ansible中使用docker模块所需的docker
python模块。您可以在下面的任务中使用pip安装它
- name: Ensure docker python module is present
pip:
name: docker[tls]
您可能还需要安装pip,这取决于您的操作系统和软件包管理器
注意:Ansible已将docker\u服务
模块的名称从2.8版开始更改为docker\u compose