首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将Docker映像部署到Heroku时发生R10错误

将Docker映像部署到Heroku时发生R10错误
EN

Stack Overflow用户
提问于 2020-05-29 17:53:45
回答 1查看 537关注 0票数 0

当我试图部署我的Docker映像时,我遇到了一些问题,它包含了一个简单的流光应用程序到Heroku。我的问题是部署后我无法访问我的Docker。仔细看一下,我发现了以下错误:

Error R10 (Boot ) -> Web进程在启动后60秒内无法绑定到$PORT

我已经研究并了解到,这是因为端口不可用,因为Heroku将动态分配端口号。

我已经通过放置下面的Dockerfile来确保不会发生这种情况。

Dockerfile:

代码语言:javascript
运行
复制
FROM python:3.7
COPY . /app
WORKDIR /app
RUN pip install streamlit
ENTRYPOINT ["streamlit","run", "--server.enableCORS", "false" ,"--server.port", "$PORT"]
CMD ["app.py"]

我现在可以看到,网络URL和外部URL端口号是由Heroku分配的,因为它不是典型的5901号。

然而,令我困惑的是,为什么容器不能绑定到给定的动态端口号?我以为应用程序会使用给定的动态编号?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-05-29 19:22:59

问题是,在Heroku上执行Docker运行时,$PORT不会被相应的环境变量替换。

另一种方法是创建一个调用.sh脚本的Docker文件

代码语言:javascript
运行
复制
FROM python:3.7 
COPY . /app 
WORKDIR /app 
RUN pip install streamlit


ENTRYPOINT "/startup.sh"

和startup.sh

代码语言:javascript
运行
复制
echo PORT $PORT
streamlit run --server.enableCORS false --server.port $PORT app.py
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62091936

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档