Alpine码头集装箱3.13.1apk add ansible
成功,但执行需要ipaddr筛选器的剧本失败,并显示:
Ansible: The ipaddr filter requires python's netaddr be installed on the ansible controller
Ansible版本:2.10.5
(如果需要,可以执行其他版本)
ipaddr筛选器:Ansible docs
尝试通过ansible-galaxy collection install ansible.netcommon
、pip install netaddr
安装。仍然收到相同的错误。
2条答案
按热度按时间6rqinv9w1#
你需要先安装它:
gudnpqoy2#
对于任何安装了netaddr包但仍然面临这个问题的人来说,当您在Ansible控制器设置的生命周期中更改默认python示例时,就会出现一个问题。
你必须检查你的Ansible安装使用的是哪个python安装。至少在一些安装中,它会将python二进制代码硬编码到
/home/user/.local/bin/<ansible script>
中,因此如果你改变了它,它不会保持与默认的python安装同步。解决方案,在最后使用脚本自动执行所有操作:
(from(x月1日至1x日)
我不得不改变...
致:
然后它开始工作。
下面是一个sed命令(请注意,您必须自己添加python3路径-您可以使用
which python3
找到默认路径),它可以为所有ansible脚本自动执行上述所有操作,或者更准确地预览更改:sed -s '1 s|^#!.*$|#!<new path to python3>|' ~/.local/bin/ansible*
运行完上面的代码后,如果看起来没问题,只需将-i作为标志添加到sed中(如
sed -i -s
),它就会将它们全部替换,您应该可以开始了。