为什么在安装 Negbio 后出现 ModuleNotFoundError?

Why am I getting ModuleNotFoundError after installing Negbio?

构建一个 docker 图像,我在我的 Dockerfile 中安装了 Negbio 使用:

RUN git clone https://github.com/ncbi-nlp/NegBio.git xyz && \
    python xyz/setup.py install

当我在 localhost:1227 尝试 运行 我的 Django 应用程序时,我得到:

No module named 'negbio' ModuleNotFoundError exception

当我 运行 pip list 时,我可以看到 negbio。我错过了什么?

根据您的评论,It wouldn't install with pip and hence not installing via pip

首先,要确保 https://github.com/ncbi-nlp/NegBio 通过 python setup.py install 正确安装,您需要先通过 pip install -r requirements 安装它的依赖项。所以无论哪种方式,你都注定要在 Docker.

中包含 pip

例如,这是可以正确安装 negbio 软件包的示例 Dockerfile

 FROM python:3.6-slim

 RUN mkdir -p /apps
 WORKDIR /apps

 # Steps for installing the package via Docker:
 RUN apt-get update && apt-get -y upgrade && apt-get install -y git gcc build-essential
 RUN git clone https://github.com/ncbi-nlp/NegBio.git
 WORKDIR /apps/NegBio
 RUN pip install -r requirements.txt
 RUN python setup.py install

 ENV PATH=~/.local/bin:$PATH

 EXPOSE 8000

 CMD ["python", "manage.py", "runserver", "0.0.0.0:8000"]

所以如果你真的通过 requirements.txt

安装它也不会造成伤害

我会这样做:

requirements.txt --> 在此处添加您的所有要求

negbio==0.9.4

并确保使用 RUN pip install -r requirements.txt

在 docker 中即时安装它

我最终通过进入全 Anaconda 环境解决了我的问题。谢谢大家的意见。