在Heroku上部署Node.js应用程序时遇到了H14代码错误。该应用程序调用Python脚本,因此它具有一些程序包依赖性。
我遵循了文档,换句话说,我的构建包如下:
heroku/nodejs
heroku/python
我的根目录中有一个requirements.txt
文件,而一个包含runtime.txt
的{{1}}。
python-3.6.3
的配置及其内容如下:
package.json
我也尝试使用命令 {
"name": "spam-community",
"version": "1.0.0",
"description": "This app is a spam and ham detector",
"main": "index.js",
"scripts": {
"start": "node index.js",
"server": "nodemon index.js"
},
"author": "Zadi younes",
"license": "ISC",
"dependencies": {
"body-parser": "^1.18.3",
"child_process": "^1.0.2",
"cookie-parser": "^1.4.4",
"express": "^4.16.4",
"mongoose": "^5.4.17",
"multer": "^1.4.1",
"nodemailer": "^5.1.1",
"nodemon": "^1.18.10",
"sendmail": "^1.4.1"
},
"engines": {
"node": "10.x"
}
}
将网络恶魔设置为一个,但出现错误
找不到该进程类型(网络)
答案 0 :(得分:0)
The order of your buildpacks is important:
列表中的最后一个buildpack将用于确定应用程序的process types。从早期buildpacks定义的任何进程类型都将被忽略。
您可以运行
heroku help buildpacks
来获取命令选项的完整列表。
尝试在heroku/nodejs
之后移动heroku/python
:
heroku buildpacks:set heroku/nodejs
heroku buildpacks:add --index 1 heroku/python
使用heroku:buildpacks
验证您的buildpack。
如果您没有Procfile
,这将尤其重要。在这种情况下,your start
script will be run automatically假设heroku/nodejs
是您的最后一个构建包。