【问题标题】:How to deploy app to 0.0.0.0 and port 5000 on Railway.app?如何将应用程序部署到 Railway.app 上的 0.0.0.0 和端口 5000?
【发布时间】:2023-02-11 11:25:06
【问题描述】:

我正在尝试在 railway.app 上部署我的 Flask 应用程序。我制作了一个 Flask 后端和一个 React 前端,并且正在使用 Dockerfile 来构建我的应用程序。 控制台给我这个警告 -

Looks like your app is listening on 127.0.0.1. You may need to listen on 0.0.0.0 instead.

文件

# syntax=docker/dockerfile:1

FROM python:3.7-slim

WORKDIR /bank-loan-status

COPY requirements.txt requirements.txt
RUN pip install -r requirements.txt


COPY . .

EXPOSE 5000/tcp
EXPOSE 5000/udp

CMD [ "python", "-m" , "flask", "run", "--host=0.0.0.0"]

Python 脚本

import pickle
from flask import Flask,request,app,jsonify,render_template, send_from_directory
from flask_cors import CORS, cross_origin
import numpy as np
import pandas as pd

app= Flask(__name__,static_url_path='', static_folder='FRONTEND/build')
cors = CORS(app)
app.config['CORS_HEADERS'] = 'Content-Type'
# Load the model
xgb_model = pickle.load(open('xgbclassifier.pkl','rb'))
scalar = pickle.load(open('scaling.pkl', 'rb'))

@app.route('/')
@cross_origin()
def template():
    return send_from_directory(app.static_folder,'index.html')

@app.route('/predict_api', methods=['POST'])
@cross_origin()
def predict_api():
    data = request.json['data']
    print(np.array(list(data.values())).reshape(1,-1))
    new_data = scalar.transform(np.array(list(data.values())).reshape(1,-1))
    op = xgb_model.predict(new_data)
    print(op[0])
    return  jsonify(int(op[0]))

@app.route('/predict', methods=['POST'])
@cross_origin()
def predict():
    data=[float(x) for x in request.form.values()]
    f_ip = scalar.transform(np.array(data).reshape(1,-1))
    print(f_ip)
    output = xgb_model.predict(f_ip)[0]
    return render_template(app.static_folder, "index.html", prediction_text="The predicted loan status is {}".format(output))

if __name__=="__main__":
    app.run(host="0.0.0.0",port=5000)

我试图更改 Dockerfile 中的执行命令,但仍然无法修复此警告。

命令 -

CMD [ "python", "-m", "flask", "run", "--host=0.0.0.0", "--port=5000"]

关于如何解决它的任何想法?

【问题讨论】:

    标签: python deployment dockerfile


    【解决方案1】:

    支持兄弟,同样的问题。一生的兄弟

    【讨论】:

    • 这并不能真正回答问题。如果您有其他问题,可以点击提问。要在这个问题有新答案时得到通知,您可以follow this question。一旦你有足够的reputation,你也可以add a bounty来引起更多人对这个问题的关注。 - From Review
    猜你喜欢
    • 1970-01-01
    • 2023-01-15
    • 2016-10-23
    • 2018-06-18
    • 2021-11-17
    • 2021-08-22
    • 2016-01-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多