Сквозной импорт в Docker - PullRequest
       16

Сквозной импорт в Docker

0 голосов
/ 25 октября 2018

У меня есть основная папка рабочего места (WORKDIR в Dockerfile), которая содержит папку initialize с файлом max_init.py.Проблема в том, что когда я запускаю образ, он не может импортировать этот модуль:

  File "app.py", line 1, in <module>
    from initialize.max_init import *
ImportError: No module named initialize.max_init

Dockerfile:

FROM ubuntu:latest
RUN apt-get update -y && \
    apt-get install -y python-pip python-dev build-essential
COPY . /workbench
WORKDIR /workbench
RUN pip install -r requirements.txt
EXPOSE 8888
EXPOSE 5000
ENTRYPOINT ["python"]
CMD ["app.py"]

Я думаю, что проблема заключается в моем отсутствии опыта в Docker, ноЯ не могу найти решение самостоятельно

Редактировать: иерархия:

workbench    
    |-- app.py
        |-- initialize
            |-- max_init.py

1 Ответ

0 голосов
/ 25 октября 2018

Вы помните, чтобы записать файл __init__.py в папку initialize модуля?Правильно ли он находится на вашем файле max_init.py?Если вы не знакомы с соглашением, объяснения имеются в большом количестве.

  1. Официально: https://docs.python.org/3/tutorial/modules.html#packages

  2. Объяснитель колб, который я лично нашел довольно легко понять:http://flask.pocoo.org/docs/1.0/patterns/packages/

Редактировать: Я вижу из обновлений, что это действительно проблема.С вами все будет хорошо, если вы это исправите ... Я даже не думаю, что вам нужно перестраивать образ докера, но я могу ошибаться.

...