+-

我正在创建一个包含 python和php的docker.我正在编写一个python脚本来连接到驻留在另一个docker中的MQTT代理.
在我的dockerfile中,我确保使用以下命令安装paho客户端:
RUN apt-get install -y python3-dev RUN apt-get install -y libffi-dev RUN apt-get install -y libssl-dev ADD https://bootstrap.pypa.io/get-pip.py /tmp/get-pip.py RUN cat /tmp/get-pip.py | python3 RUN pip install paho-mqtt RUN pip install python-etcd但是,当我运行python脚本时,我收到以下错误:
ImportError: No module named paho.mqtt.clientdocker安装没有显示有关paho-mqtt安装的任何错误.
如果有人可以指导这一点,那就太棒了.
最佳答案
我想我找到了问题,
您已安装Python3但由于某种原因,解释器在Linux中默认为2.7版.
尝试使用pip3 install paho-mqtt python-etcd.
或者,如果它不起作用,您可以将paho文件夹从Python2.7 site-packages文件夹中复制并粘贴到Python3 site-packages文件夹中.我刚刚验证了用于Python2的paho-mqtt 1.2与使用Meld diff工具的Python3的paho-mqtt 1.2完全相同.请注意,当您直接复制并粘贴点子列表时,将不会显示您复制的包裹.
site-packages通常位于系统lib文件夹中.这取决于Python的安装方式.在我的情况下,一切都在$HOME / .pyenv文件夹中.
记住Python2有自己的site-packages文件夹,Python3有自己的site-packages文件夹,Python搜索包.有时,如果您使用的是基于Debian的Linux发行版,请务必检查dist-packages文件夹,看看是否可以找到您要查找的软件包.
点击查看更多相关文章
转载注明原文:python – 导入错误:找不到paho.mqtt.client - 乐贴网