我查了几个博客。特别是this一个关于使用mongolab在heroku上部署和托管meteor的问题。
我按照以下步骤操作:
meteor create test
cd test
git init
git add .
git commit -m "tst"
heroku create pikachu
heroku config:set ROOT_URL="https://pikachu.herokuapp.com"
heroku config:set MONGO_URL="pikachu:este@dsxxx.mlab.com:xxx/pikachueste"
heroku buildpacks:set https://github.com/Pushplaybang/meteor-buildpack-horse
git push heroku master
部署后出现以下错误:
Starting process with command .meteor/heroku_build/bin/node .meteor/heroku_build/app/main.js
退出状态为8的流程
assert.js:93
throw new assert.AssertionError: "undefined" === "function"
at wrapPathFunction(/app/.meteor/heroku_build/app/programs/server/mini- files.js:77:10)
at Object.<anonymus>(/app/.meteor/heroku_build/app/programs/server/mini-files.js:108:24)
...
Process exited with status 8
状态从开始变为崩溃
我注意到当我尝试在我的沙箱中安装mongodb插件时:
heroku addons:create mongolab:sandbox
流程完成:
!Please verify your account to install this add-on plan ...
是否因为我无法安装mongodb插件而出现问题? 是否可以在heroku沙箱中安装mongodb插件? 还有其他选择吗?
谢谢,
答案 0 :(得分:1)
此错误的原因之一:
assert.js:93
throw new assert.AssertionError: "undefined" === "function"
at wrapPathFunction(/app/.meteor/heroku_build/app/programs/server/mini- files.js:77:10)
at Object.<anonymus>(/app/.meteor/heroku_build/app/programs/server/mini-files.js:108:24)
是否在heroku上运行的节点版本与流星正在使用的节点版本不同。到目前为止,Meteor正在使用节点v.4.5.0,而你的buildpack使用的是低于该节点。我曾经使用过那个buildpack并且遇到了同样的错误。
您可以使用原始meteor buildpack horse并处理
Please verify your account to install this add-on plan ...
删除mongolab插件。我自己也经历过这些问题。你可以参考this guide,这样你就可以更清楚了。它使用原始流星buildpack马的叉子而没有mongolab插件。按照指南,你会没事的。