将带有docker的flask应用程序部署到heroku时出现错误R10

时间:2020-09-19 15:40:41

标签: python docker flask heroku

我的python应用程序可以作为本地docker容器正常运行,但是当尝试在heroku上进行部署时,出现此错误:

错误R10(引导超时)-> Web进程在启动后60秒内未能绑定到$ PORT

if __name__ == '__main__':
    from os import environ
    app.run(host='0.0.0.0', port=environ.get('PORT', 5000))

我的dockerfile:

FROM python:3

# set a directory for the app
WORKDIR /usr/src/app

# copy all the files to the container
COPY . .

# install dependencies
RUN pip3 install --no-cache-dir -r requirements.txt

# heroku doesn't need this
# EXPOSE 5000

# run the command
CMD ["python3", "app.py"]

我认为这可能与dyno = 1的应用太大有关,我不得不为增加dyno而付出代价吗?但我不确定。.

提前谢谢!

1 个答案:

答案 0 :(得分:2)

应用程序无法绑定到Heroku端口,与Dyno无关。尝试在分配端口之前强制转换为int端口

 port = int(os.environ.get("PORT", 5000))