【发布时间】:2021-10-18 03:39:08
【问题描述】:
我在尝试在 ansible playbook 中执行 docker-compose 时遇到错误。
我在 Mac OSX 上运行,但目标节点是 AWS ec2 (Ubuntu 20.04)
在 Ubuntu 20.04 上,我安装了以下内容
sudo apt-get update -y && sudo apt-get install git python3 python3-setuptools
python3-pip software-properties-common docker docker.io unzip acl -y
sudo apt-add-repository -y --update ppa:ansible/ansible
sudo apt-get install ansible -y
sudo apt install python3-pip -y
sudo apt-get install python3-docker
pip3 install docker
pip3 install docker-compose
在main.yml中
name: Run "docker-compose up"
community.docker.docker_compose:
project_src: /data
project_name: test
register: output
我收到以下错误
fatal: [ndr2]: FAILED! => {"changed": false, "msg": "Unable to load docker-compose. Try `pip install docker-compose`. Error: Traceback (most recent call last):\n File \"/tmp/ansible_community.docker.docker_compose_payload_566twi2g/ansible_community.docker.docker_compose_payload.zip/ansible_collections/community/docker/plugins/modules/docker_compose.py\", line 494, in <module>\nModuleNotFoundError: No module named 'compose'\n"}
感谢任何帮助。
【问题讨论】:
-
它可能正在 AWS 主机上寻找 docker-compose
-
我已经安装了 docker-compse。我在那个 SO 问题中看到了这个答案,但也没有用。
-
您使用 Python3 解释器引导了 docker compose 安装。 Ansible 是否使用相同的 Python3 解释器在远程主机上执行其提供程序命令?
-
我相信,在我的 hosts 文件中,我有 ansible_python_interpreter=/usr/bin/python3
标签: macos docker amazon-ec2 docker-compose ansible