在docker中调用gunicorn的正确方法是什么?

时间:2019-08-06 21:52:45

标签: python docker flask gunicorn wsgi

我已经进行了很多关于在金枪鱼上部署烧瓶的研究。我已经构建了一个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中包含主机吗?

0 个答案:

没有答案