【发布时间】:2021-08-26 01:32:21
【问题描述】:
在大多数情况下,我认为 Ansible 工程师安装 pip 包 1) 不使用 virtualenv 和 2) 在 root 下。
如果我们手动执行此操作,我们会看到警告
警告:以 root 身份运行 pip 会破坏包和权限。您应该使用 venv 可靠地安装软件包:https://pip.pypa.io/warnings/venv
通常,当我们的 Ansible 自动化变得更高级时,我们需要额外的 pip 包来使 Ansible 模块工作。这通常还需要安装额外的操作系统包。例如对于 Ubuntu 18.04 上的 python-ldap pip 包需要
- 构建必不可少
- python3-dev
- python3-wheel
- libsasl2-dev
- libldap2-dev
- libssl 开发
通过以 root 身份安装额外的 pip 包使 Ansible 在目标节点上工作的方式显然不是使用 Python 和 Pip 的推荐方式,这让我想知道是否没有更好的方式来做到这一点。
我们不应该使用 virtualenv 和其他帐户而不是 root 来为 Ansible 安装 pip 吗?
【问题讨论】:
标签: python pip ansible virtualenv