我有一个用python,sqlalchemy和flask编写的Web应用程序。
应用程序以及静态文件,样式表等存储在名为flask-app的文件夹中,程序将从以下位置运行:
python server.py
当我从终端运行它时,它运行得非常好。但是当我从docker运行它时它不起作用。
我的Dockerfile如下所示:
FROM ubuntu:latest
MAINTAINER Rahul Raghhunath "rahulraghu94@gmail.com"
RUN apt-get update -y
RUN apt-get install -y python-pip python3.5 build-essential
COPY . /server
WORKDIR /server
RUN pip install --upgrade pip
RUN pip install flask SQLAlchemy
ENTRYPOINT ["python3.5"]
CMD ["server.py"]
我正在运行以下内容:
docker build -t rahulraghu94/wine-catalog .
它成功运行。
但是当我跑步时:
docker run rahulraghu94/wine-catalog
它说:
Traceback (most recent call last):
File "server.py", line 1, in <module>
from flask import Flask, render_template, request, url_for, redirect, flash, jsonify
ImportError: No module named 'flask'
我无法弄清楚出了什么问题。有什么帮助吗?
答案 0 :(得分:1)
flask
如@polku建议的那样,如果你想使用python3解释器,请尝试使用pip3
您可以尝试安装python3-pip并使用pip3安装flask和SQLAlchemy
FROM ubuntu:latest
RUN apt-get update -y
RUN apt-get install -y python3-pip python3.5
COPY . /server
WORKDIR /server
RUN pip3 install flask SQLAlchemy
ENTRYPOINT ["python3.5"]
CMD ["server.py"]