防止Heroku开始网络dyno

时间:2017-01-11 04:40:02

标签: heroku scheduled-tasks

我想配置一个Heroku应用程序,每天运行一次计划任务。我的源代码树如下所示:

bin/myScript
Procfile
package.json

部署应用时,我看到以下错误:

2017-01-11T04:31:36.660973+00:00 app[web.1]: npm ERR! missing script: start

我相信这是因为Heroku试图改变网络动态。我没有网络动态,我也不想要。所以我用这一行创建了一个Procfile

heroku ps:scale web=0

防止heroku旋转web dyno。那没用。我还能做些什么来防止我的应用在部署时崩溃?如果计划的任务将在一个单独的一次性Dyno中运行,这是否重要?

2 个答案:

答案 0 :(得分:2)

你不应该拥有" heroku ps:scale web = 0"在您的Procfile中。 这样做会告诉heroku创建一个名为" heroku"尝试在为其实例化的任何dyno实例上运行以下命令:" ps:scale web = 0"。这可能会产生错误,无论如何,这不是你想要的。

相反,你应该运行" heroku ps:scale web = 0"作为Heroku toolbelt CLI命令(或者从GUI的“资源”选项卡中执行等效操作,如您所做的那样)。

答案 1 :(得分:0)

我想我找到了一个修复:在网页GUI的“资源”标签中,有一个带有开/关滑块的动态列表列表。我将web dyno滑块关闭,现在当我部署时没有崩溃。不过,我还不清楚为什么Procfile系列不足。