提问者:小点点

Docker ModuleNotFounderRror:没有名为“scipy”的模块


我正在通过构建Python的Docker映像来探索它。 我想使用scipy库,但由于某种原因无法导入它。 以下是我的__init.py__文件的导入:

import numpy as np
import scipy.stats as sp
from flask import Flask, g
from flask_restful import Resource, Api, reqparse 

我的DockerFile:

FROM python:3

WORKDIR /usr/src/app

COPY requirements.txt ./

RUN pip install --no-cache-dir -r requirements.txt

COPY . .

CMD [ "python", "./run.py" ]

requirements.txt:

numpy==1.19.0
scipy==0.15.1
Flask==0.12.2
markdown==2.6.11
flask-restful==0.3.6

最后是我的docker-compose.yml:

version: '3.4'

services:
        calculator:
                build: .
                volumes:
                        - .:/usr/src/app
                ports:
                        - 5000:80

现在,当我执行docker-composeup时,会出现以下错误:

calculator  | Traceback (most recent call last):
calculator  |   File "./run.py", line 1, in <module>
calculator  |     from probability_calculator import app
calculator  |   File "/usr/src/app/probability_calculator/__init__.py", line 2, in <module>
calculator  |     import scipy.stats as sp
calculator  | ModuleNotFoundError: No module named 'scipy'

我在这里已经看过了,但是将这些行添加到DockerFile中似乎仍然不起作用。


共1个答案

匿名用户

答案-requirements.txt有一个老版本的scipy,所以它不能工作,我把它升级到1.4.1,现在它似乎能工作了。