Heroku错误地检测到我的Node应用程序是一个Ruby应用程序
我有一个使用Bundler和Guard来处理预编译步骤的Node项目。 这意味着我在我的项目的根目录下有一个Gemfile文件以及package.json文件。
我的问题是,Heroku相信我的项目是一个Ruby应用程序,只是因为Gemfile存在。 并抱怨说我还没有提交Gemfile.lock,我不想提交。
-----> Heroku receiving push -----> Ruby app detected ! ! Gemfile.lock is required. Please run "bundle install" locally ! and commit your Gemfile.lock. ! ! Heroku push rejected, failed to compile Ruby app
有没有办法告诉Heroku该应用程序是一个Node应用程序,而不是一个Ruby应用程序?
看起来有一个新的方法来做到这一点,因为BUILDPACK_URL
现在已经被废弃了, 这里解释,但是本质上这个命令是:
$ heroku buildpacks:set heroku/nodejs
您也可以在创build应用程序时指定一个buildpack:
$ heroku create myapp --buildpack heroku/nodejs
解决这个问题,Heroku Support提供了很多帮助: 使用构build包!
通过在BUILDPACK_URL
config var中指定一个自定义的buildpack来覆盖Heroku默认的BUILDPACK_URL
$ heroku config:add BUILDPACK_URL=https://github.com/heroku/heroku-buildpack-nodejs
您也可以在创build应用程序时指定一个buildpack
$ heroku create -s cedar --buildpack https://github.com/heroku/heroku-buildpack-nodejs
当你知道的时候很简单。 在Heroku开发中心可以find更多的文档
- 如何将静态HTML和CSS文件连接到Node.js应用程序?
- Node.js和Rails应用程序托pipe一个共享的MongoDB数据库和定价
- 如何在heroku上使用中微子部署node.js应用程序
- “抓取失败的加载” – 在Postman中获取作品,但在Chrome和Safari中失败
- Chrome中的“意外回复代码:503”。 也许与heroku上的socket.io有关?
- 在express节点上使用本地驱动程序连接到heroku上的mongodb
- heroku上的node.js web服务器 – 不断增长的内存
- 早午餐build立在Heroku失败
- 将ffmpeg添加到heroku的buildback nodejs中