【发布时间】:2023-04-04 21:15:02
【问题描述】:
我最近尝试在 heroku 上部署我的第一个 MeteorJS (1.3) 应用程序并收到服务器日志错误 - “Meteor 需要 Node v0.10.41 或更高版本”。 不确定节点和流星之间的关系。流星应用真的需要一个节点后端还是这是一个流星错误?
另外,当我运行“meteor node -v”时,我得到了 v0.10.43,它是更高版本,所以我不确定部署时出现了什么问题。
【问题讨论】:
我最近尝试在 heroku 上部署我的第一个 MeteorJS (1.3) 应用程序并收到服务器日志错误 - “Meteor 需要 Node v0.10.41 或更高版本”。 不确定节点和流星之间的关系。流星应用真的需要一个节点后端还是这是一个流星错误?
另外,当我运行“meteor node -v”时,我得到了 v0.10.43,它是更高版本,所以我不确定部署时出现了什么问题。
【问题讨论】:
在发帖之前,您是否在网络上或Meteor documentation 中进行了搜索?从documentation,它说,
您的 JavaScript 代码可以在两种环境中运行:客户端 (浏览器)和服务器(服务器上的 Node.js 容器)。
基本上,Meteor 运行在节点 JS 之上,具有用于反应性和其他功能的所有样板。
编辑: 现在meteor还有guide。
【讨论】:
万一其他人来到这里,在尝试了这里的修复后,我的应用程序在 Heroku 上启动仍然有错误,但错误消息并不冗长,只是继续给出 Node 版本错误。这一系列的修复让它开始了。
1.在终端中,npm install - 对我来说这是重新安装的 npm。我还运行了“流星更新”,但我知道没有重大更新会破坏我的应用程序。
2。检查 .gitignore 文件 - 里面可能有一些重要的东西。就我而言,“newrelic”文件夹在其中,但在 package.json 中没有被引用为依赖项。要解决此问题,请确保所有子文件夹在 package.json 中都有依赖项引用(推荐),或者从 .gitignore 中删除 node_modules(创建额外的获取,不推荐但有效)。
3.使用上面 Kevin 的构建路径 - 或另一个更新的 Meteor 构建包 - 我使用了 horse 包。确保将 .git 添加到 URL 的末尾,如下所示:
heroku buildpacks:set https://github.com/kevinseguin/heroku-buildpack-meteor.git --app myAppName
4.设置 $PATH - 在终端: PATH=$PATH:$HOME/.meteor
5.在 Heroku 中设置 ROOT_URL - 那里的一些说明说将其设置为“myAppName.herokuapp.com”。这会导致 Heroku 出现错误。如果您在前面加上“http://”,就像这样,“http://myAppName.herokuapp.com”,它是固定的。
【讨论】:
我在部署新版本的流星 1.3 时也遇到了同样的问题,也度过了一天中最美好的时光,但最终得到了简单的解决方案!
您使用流星 1.3 的最后一个 buildpack:
https://github.com/michaltakac/meteor-buildpack-horse 然后按照那里显示的那样做所有事情,而不是做git push heroku master,你做
git push -f heroku master
所以你的命令的全部内容:
>heroku create <yourapp>
>heroku buildpacks:set https://github.com/michaltakac/meteor-buildpack-horse.git
>heroku addons:create mongolab
>heroku config:set ROOT_URL=https://<yourapp>.herokuapp.com
>git push -f heroku master
感谢gitjason 提出正确方向的建议。
【讨论】:
https://github.com/AdmitHub/meteor-buildpack-horse 为我工作。如果我是你,我会从你的答案中删除 -f - 它不会有帮助,而且有人可能会通过使用它而真正伤害自己并丢失提交历史!
buildpack "jordansissel/heroku-buildpack-meteor.git" 有问题
Meteor 1.3 需要 Node 0.10.41,而这个 buildpack 在 0.10.40 编译节点。
我提交了一个新 buildpack 的拉取请求,或者在 https://github.com/kevinseguin/heroku-buildpack-meteor.git 尝试我的 fork
【讨论】:
https://github.com/AdmitHub/meteor-buildpack-horse 一个。