我有一个简单的python应用程序,它使用我创建的自定义类。以下文件夹结构如下:
│ mains
| ├── run_it.py
| ├── __init__.py
│ ├── parsers
│ ├── parser.py
│ ├── __init__.py
在主程序run_it.py中,我正在调用
from mains.parsers.parser import Parser
在本地模式下,我已将〜/ .bashrc添加到该行,并且效果很好:
export PYTHONPATH="${PYTHONPATH}:/home/.../THE_FOLDER_ABOVE_MAINS"
但是当我尝试对应用程序进行docker化时,出现以下错误:
File "/app/run_it.py", line 11, in <module>
from mains.parsers.parser import Parser
ModuleNotFoundError: No module named 'mains'
我的Dockerfile是:
FROM python:3
RUN mkdir /app
WORKDIR /app
ADD . /app/
RUN apt-get update
RUN pip3 install gunicorn
RUN pip3 install -r requirements.txt
EXPOSE 5000
ENV PYTHONIOENCODING=utf-8
ENV GUNICORN_CMD_ARGS="--bind 0.0.0.0:5000 --workers=2"
CMD ["gunicorn","run_it:app"]
任何想法我该如何解决? 预先感谢!