如何让heroku运行我的脚本来启动应用程序

时间:2017-02-26 01:00:39

标签: java heroku deployment

我的应用程序构建在一个fullstack java MVC框架上,不需要部署到容器。但是我需要运行一个脚本来构建和启动应用程序。

脚本的内容非常简单:

#!/bin/sh
if [ ! -f target/dist/start ]; then
    mvn clean package
    cd target/dist
    unzip *.zip
else
    cd target/dist
fi
./run $*

该脚本位于项目主文件夹中。

我在Procfile中添加了以下命令,但它不起作用:

web: ./run_prod

当我在heroku上部署时,它表示成功,但是当我访问我的应用程序时,它总是说:

Application error
An error occurred in the application and your page could not be served. If you are the application owner, check your logs for details.

heroku日志文件显示:

2017-02-26T00:50:00.000000+00:00 app[api]: Build succeeded
2017-02-26T00:50:25.559742+00:00 heroku[router]: at=error code=H14 desc="No web processes running" method=GET path="/" host=todobackend-act.herokuapp.com request_id=59af9898-b6c7-4a51-ae0e-33ffae0d1f6d fwd="61.69.245.214" dyno= connect= service= status=503 bytes=
2017-02-26T00:50:26.533034+00:00 heroku[router]: at=error code=H14 desc="No web processes running" method=GET path="/favicon.ico" host=todobackend-act.herokuapp.com request_id=bf30ce34-edb0-46dc-870c-b92a24bc0cf5 fwd="61.69.245.214" dyno= connect= service= status=503 bytes=
2017-02-26T00:52:25.290301+00:00 heroku[router]: at=error code=H14 desc="No web processes running" method=GET path="/" host=todobackend-act.herokuapp.com request_id=0996409a-5024-4473-9616-1bc760c117e4 fwd="61.69.245.214" dyno= connect= service= status=503 bytes=
2017-02-26T00:52:26.102216+00:00 heroku[router]: at=error code=H14 desc="No web processes running" method=GET path="/favicon.ico" host=todobackend-act.herokuapp.com request_id=fd155207-cafc-420e-a0f1-0d3e6b73d4de fwd="61.69.245.214" dyno= connect= service= status=503 bytes=

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

执行命令

heroku ps:scale web=1

看起来你的应用程序在某个时候缩小了(这可能是在崩溃后自动发生的)。