Ansible Playbook部署Docker报错:无法卸载requests 2.25.1
在EC2 t2.micro上运行Ansible Playbook部署Docker环境时遇到pip模块安装错误
我尝试在EC2 t2.micro实例上运行Ansible Playbook,完成Docker、Docker-Compose的安装并启动Compose容器。由于要使用Ansible的Docker模块,需要在EC2实例上安装docker和docker-compose的Python模块。
以下是我的Playbook代码:
#play1 - name: Update yum repo, install docker, pip, docker-compose & pip and python modules hosts: all become: true tasks: - name: update yum repo and cache yum: name: '*' state: latest update_cache: true - name: install docker and pip yum: name: - docker - pip - name: download and install docker-compose get_url: url: https://github.com/docker/compose/releases/latest/download/docker-compose-Linux-{{lookup('pipe','uname -m')}} dest: /usr/local/bin/docker-compose mode: +x - name: start docker daemon systemd: name: docker state: started ########################################################### 问题出在这里 - name: Install docker and docker-compose python module pip: name: - docker - docker-compose ############################################################ #play2 - name: Reset connection #and test hello-world hosts: all become: true tasks: - name: add ec2-user to docker group user: name: ec2-user groups: docker append: yes - name: reconnect to server session meta: reset_connection #play3 - name: start docker containers hosts: all vars_files: - docker-vars.yml tasks: - name: copy docker-compose file copy: # copy files from controller to remote node src: /home/ansible-project/docker-compose.yaml dest: /home/ec2-user/docker-compose.yaml - name: login to docker private repo docker_login: registry_url: https://index.docker.io/v1 username: "{{user_name}}" password: "{{docker_passwd}}" - name: execute docker-compose and start container docker_compose: project_src: /home/ec2-user state: present # equivalent of docker-compose up
我的主机文件仅配置了单个组和1台服务器IP,包含ansible_user和SSH私钥用于登录。docker-vars.yaml仅存储我的Docker用户名和密码。
我需要一键完成整个部署流程。已尝试在ansible.cfg中指定interpreter_python=/usr/bin/python3,也使用过默认的/usr/bin/python3.9,但Playbook执行时出现错误:
Found existing installation: requests 2.25.1
:stderr: ERROR: Cannot uninstall requests 2.25.1 Hint: The package was installed by rpm.
但手动登录EC2执行pip install docker和pip install docker-compose时,模块可成功安装。
内容的提问来源于stack exchange,提问作者Keshav Singh N
相关产品推荐
相关产品推荐

