我想配置一个Heroku应用程序,每天运行一次计划任务。我的源码树看起来像这样:
bin/myScript
Procfile
package.json当我部署应用程序时,我看到以下错误:
2017-01-11T04:31:36.660973+00:00 app[web.1]: npm ERR! missing script: start我相信这是因为Heroku试图启动一个web dyno。我没有web dyno,也不想要。所以我用下面这行代码创建了一个Procfile:
heroku ps:scale web=0为了防止heroku制造一个网络动态。这不管用。我还能做些什么来防止我的应用程序在部署时崩溃?如果计划的任务将在单独的一次性Dyno中运行,这有关系吗?
发布于 2017-01-11 13:38:43
你不应该在你的配置文件中有行"heroku ps:scale web=0“。这样做会告诉heroku创建一个名为"heroku“的进程类型,该进程类型尝试在为其实例化的任何dyno实例上运行以下命令:"ps:scale web=0”。这可能会产生错误,而且无论如何,这不是您想要的。
相反,您应该将"heroku ps:scale web=0“作为Heroku工具带web=0命令来运行(或者从图形用户界面的资源选项卡中执行相同的操作,就像您已经做的那样)。
发布于 2017-01-11 12:46:46
我想我找到了一个解决方法:在web GUI的"Resources“选项卡中,有一个dynos列表,旁边有开/关滑块。我关闭了web dyno滑块,现在当我部署的时候没有崩溃。尽管如此,我还是不清楚为什么Procfile行是不够的。
https://stackoverflow.com/questions/41582817
复制相似问题