对于某些背景故事和参考,以下是一些Heroku文档页面的引用.
当应用程序
package.json在根目录中有文件时,将使用Heroku Node.js buildpack .
首先,Heroku查找指定流程类型的Procfile.
如果
Procfile在构建过程中应用程序的根目录中没有,则您的Web进程将通过运行来启动npm start,[...]
Procfile包含许多进程类型声明,每个声明都在一个新行上.每个进程类型都是在启动该进程类型的dyno时执行的命令声明.
例如,如果
web声明了进程类型,那么当启动此类型的dyno时web,将执行与进程类型关联的命令.例如,这可能意味着启动Web服务器.
我package.json在根目录中有一个文件(将激活Node.js buildpack),我还在Procfileroot中包含了一个包含以下内容的文件:
service: npm start
Run Code Online (Sandbox Code Playgroud)
我认为不定义webdyno会导致它不被创建; 只service应按照声明中的配置创建dyno Procfile.
相反,发生了什么事是一个积极的 web赛道是自动使用创建npm start和不活跃 service赛道使用的定义创建Procfile.然后我不得不:
heroku ps:scale web=0heroku ps:scale service=1我绝对可以想象想在Heroku上运行Node.js"服务"应用程序,它不接受任何传入连接,只接收传出连接.有没有办法配置Node.js buildpack,以便web在未定义dyno时不自动创建dyno?我查看了许多文档,寻找以下方法之一:(1)将其定义为或(2) 删除自动生成的web …