我已经进行了很多关于在金枪鱼上部署烧瓶的研究。我已经构建了一个docker映像并尝试运行,但从未幸运。因此,我想知道从gunicorn调用Flask应用程序的正确方法。
app.py:
from flask import Flask, render_template
import pandas as pd
application = Flask(__name__)
@application.route("/")
def index():
df = pd.DataFrame([1,2,3])
return str(df.to_json())
if __name__ == "__main__":
application.run(host="0.0.0.0", port=8080)
FROM python:3.6
ADD . /app
WORKDIR /app
RUN pip install --trusted-host pypi.org --trusted-host pypi.python.org --trusted-host files.pythonhosted.org flask gunicorn pandas
EXPOSE 8080
CMD ["gunicorn", "-b", "0.0.0.0:8080", "app:application","-p 8080:8080]
我看到了构建WSGI.py的另一个版本:
import application from app
if __name__ == '__main__':
application.run()
FROM python:3.6
ADD . /app
WORKDIR /app
RUN pip install --trusted-host pypi.org --trusted-host pypi.python.org --trusted-host files.pythonhosted.org flask gunicorn pandas
EXPOSE 8080
CMD ["gunicorn", "-b", "0.0.0.0:8080", "wsgi:application","-p 8080:8080]
问题1: 我需要wsgi.py吗?
问题2: 我需要在wsgi.py中包含主机吗?