Docker Anaconda ModuleNotFoundError
Docker Anaconda ModuleNotFoundError
我在 Linux (Ubuntu) 运行宁一个 docker 容器看起来像
FROM continuumio/miniconda
COPY . /root_dir/
WORKDIR root_dir
RUN ["conda", "env", "create", "-f", "environment.yaml"]
ENV PYTHONPATH=/rootdir/src
CMD ["conda", "run", "-n", "kardia_env", "python", "run/entrypoint.py"]
容器构建良好并解决了环境问题,但是当我 运行 它时出现错误 ModuleNotFoundError: No module named 'foo'
; run/entrypoint.py
尝试导入 foo
我不明白,因为 foo
是带有 __init__.py
文件的 src
的子目录,并且 PYTHONPATH 已更新为包含 src
。谁能解释一下这个错误?
- 您在 PYTHONPATH 中拼错了
root_dir
文件夹名称。这应该可以解决问题。
改变这个:
ENV PYTHONPATH=/rootdir/src
为此:
ENV PYTHONPATH=/root_dir/src
我在 Linux (Ubuntu) 运行宁一个 docker 容器看起来像
FROM continuumio/miniconda
COPY . /root_dir/
WORKDIR root_dir
RUN ["conda", "env", "create", "-f", "environment.yaml"]
ENV PYTHONPATH=/rootdir/src
CMD ["conda", "run", "-n", "kardia_env", "python", "run/entrypoint.py"]
容器构建良好并解决了环境问题,但是当我 运行 它时出现错误 ModuleNotFoundError: No module named 'foo'
; run/entrypoint.py
尝试导入 foo
我不明白,因为 foo
是带有 __init__.py
文件的 src
的子目录,并且 PYTHONPATH 已更新为包含 src
。谁能解释一下这个错误?
- 您在 PYTHONPATH 中拼错了
root_dir
文件夹名称。这应该可以解决问题。
改变这个:
ENV PYTHONPATH=/rootdir/src
为此:
ENV PYTHONPATH=/root_dir/src