代码之家  ›  专栏  ›  技术社区  ›  user994165

Docker Flask ModuleNotFoundError:没有名为“Flask”的模块

  •  0
  • user994165  · 技术社区  · 6 年前

    web_1  | Traceback (most recent call last):
    web_1  |   File "glm-plotter.py", line 4, in <module>
    web_1  |     from flask import Flask, render_template, request, session
    web_1  | ModuleNotFoundError: No module named 'flask'
    glm-plotter_web_1 exited with code 1
    

    我试着在requirements.txt中将“Flask”改为“Flask”

    Dockerfile文件

    FROM continuumio/miniconda3
    RUN apt-get update && apt-get install -y python3
    RUN apt-get install -y python3-pip
    RUN apt-get install -y build-essential
    
    COPY requirements.txt /
    RUN pip3 install --trusted-host pypi.python.org -r /requirements.txt
    
    ADD ./glm-plotter /code
    WORKDIR /code
    RUN ls .
    CMD ["python3", "glm-plotter.py"]
    

    docker-compose.yml公司

    version: "3"
    services:
      web:
        volumes:
          - ~/.aws:/root/.aws
        build: .
        ports:
          - "5000:5000"
    

    要求.txt

    click==6.6
    Flask==0.11.1
    itsdangerous==0.24
    Jinja2==2.8
    MarkupSafe==0.23
    numpy==1.11.1
    pandas==0.18.1
    python-dateutil==2.5.3
    pytz==2016.4
    six==1.10.0
    Werkzeug==0.11.10
    

    glm绘图仪.py

    from flask import Flask, render_template, request, session
    import os, json
    import GLMparser
    ...
    
    2 回复  |  直到 6 年前
        1
  •  2
  •   Jordi    6 年前

    FROM continuumio/miniconda3
    RUN apt-get update && apt-get install -y python3
    RUN apt-get install -y python3-pip
    RUN apt-get install -y build-essential
    
    COPY requirements.txt /
    RUN ["conda", "create", "-n", "myenv", "python=3.4"]
    
    RUN /bin/bash -c "source activate myenv  && pip install --trusted-host pypi.python.org -r /requirements.txt"
    
    ADD ./glm-plotter /code
    WORKDIR /code
    RUN ls .
    CMD /bin/bash -c "source activate myenv && python glm-plotter.py"
    
        2
  •  3
  •   Klaus D.    6 年前

    我创建了一个Docker,它编译得很好。你可能想根据你的个人需要来调整它,并从你的文章中添加最后几行 Dockerfile 上图:

    FROM library/python:3.6-stretch
    
    COPY requirements.txt /
    RUN pip install -r /requirements.txt
    

    请注意,在 library/python 图像没有明确的版本号 python pip 是必需的,因为只安装了一个。