【问题标题】:ModuleNotFoundError: No module named 'flask' when trying to up dockerModuleNotFoundError:尝试启动 docker 时没有名为“flask”的模块
【发布时间】:2020-02-26 07:32:28
【问题描述】:

我是第一次使用 docker 挂载我的项目,但遇到了问题:

project    | Traceback (most recent call last):
project    |   File "app.py", line 2, in <module>
project    |     from flask import Flask, jsonify, request
project    | ModuleNotFoundError: No module named 'flask'

当我这样做时: sudo docker-compose up

我真的有代码: from flask import Flask, jsonify, request

但我提出了我的要求:

SQLAlchemy
flask
flask-graphql
flask-migrate
flask-sqlalchemy
graphene
graphene-sqlalchemy
mysqlclient
Flask-GraphQL-Auth
flask_jwt

我也尝试过强制版本:

flask==1.1.1

我的 docker Dockerfile 有:

FROM python:3.6
COPY . /app
WORKDIR /app
RUN python3 -m pip install --upgrade pip
EXPOSE 5000
ENTRYPOINT ["python"]
CMD ["app.py"]

我在sudo docker-compose build的日志中看到:

Step 4/7 : RUN python3 -m pip install --upgrade pip
 ---> Running in df146c97e8fa
Requirement already up-to-date: pip in /usr/local/lib/python3.6/site-packages (20.0.2)

我不知道为什么会出现这个问题。有什么想法吗?

【问题讨论】:

    标签: python docker flask


    【解决方案1】:

    在您的 Dockerfile 中添加 requirements.txt

    FROM python:3.6
    COPY . /app
    WORKDIR /app
    RUN pip install --upgrade pip
    RUN pip install -r requirements.txt
    EXPOSE 5000
    ENTRYPOINT ["python"]
    CMD ["app.py"]
    

    【讨论】:

      【解决方案2】:

      您没有在 dockerfile 中安装要求,因此 dockerized 环境没有 Flask。

      添加

      RUN python3 -m pip install -r /app/requirements.txt
      

      在当前RUN python3 -m pip install --upgrade pip 行之后。

      【讨论】:

        猜你喜欢
        • 2019-02-23
        • 2019-08-02
        • 1970-01-01
        • 2021-10-18
        • 2020-06-21
        • 2021-11-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多