我正在尝试运行 ansible playbook 来设置我的一个 Web VM,以删除和/或安装某些包,以便我们可以开始我们的 Web 应用程序周(网络博客)。我使用 Microsoft Azure。所有
我正在尝试运行 ansible playbook 来设置我的一个 Web VM,以删除和/或安装某些软件包,以便我们可以开始我们的 Web 应用程序周(网络博客)。我使用 Microsoft Azure。允许所有连接(尤其是 SSH 和 HTTP)。
以下是剧本:
---
- name: Config Web VM with Docker
hosts: webservers
become: true
tasks:
- name: Uninstall apache if needed
ansible.builtin.apt:
update_cache: yes
name: apache2
state: absent
- name: docker.io
ansible.builtin.apt:
update_cache: yes
name: docker.io
state: present
- name: Install pip3
ansible.builtin.apt:
force_apt_get: yes
name: python3-pip
state: present
- name: Install Docker python module
pip:
name: docker
state: present
- name: revert requests to 2.31.0 to bypass https://github.com/docker/docker-py/issues/3256
ansible.builtin.command:
cmd: pip install --force-reinstall requests==2.31.0
- name: download and launch a docker web container
docker_container:
name: dvwa
image: cyberxsecurity/dvwa
state: started
published_ports: 80:80
restart_policy: always
- name: Enable docker service
systemd:
name: docker
enabled: yes
ansible.cfg 可以通过 SSH 使用正确的用户名进行连接,并且 hosts 文件具有正确的内部 IP 以及 python3 解释器(Ubuntu 20.04 LTS)
事实检查并正确连接到 10.0.0.6 web VM,然后当要删除 apache2 时,它就挂起了。之后,它会显示有关 apt 的“未知原因”错误。
我真是太困惑了。我手动进入虚拟机删除 apache2,结果提示它不存在。太棒了。然后我去安装 docker.io,但它提示包不存在???\'使用不同名称\' 错误。然后当执行每个人都说的建议时 sudo apt-get update
,它卡在 0% 并失败,提示 \'Er:0\' 等等,提示 \'未找到索引文件\' 之类的。
到底是怎么回事?