有没有人有幸为Heroku部署JHipster应用程序?我认为需要定制buildpack,但我并不是100%确定的,因为我是Heroku的新手。部署JHipster应用程序到Heroku
回答
试图部署到Heroku时遇到两个问题。
第一个问题,由于package.json
文件位于根中,Heroku检测到我的应用程序为Node.js
。好的,只需创建一个.slugignore
文件并忽略package.json
即可轻松修复。现在它确认了pom.xml
并构建。
第二个问题,默认跳跃者的弹头大小约为340mb。 'slug'基本上就是你的应用程序构建的所有依赖关系的大小。 Heroku允许的最大嵌块大小为300MB。而是尝试对依赖关系进行排序,并删除使用Amazon Elastic Beanstalk的功能。而不是建立在亚马逊的服务器上,你将压缩的.war文件部署到Tomcat的环境中,这个工作正常。
我很想知道是否有人比我更幸运Heroku,但尽管我会分享我发现的东西。
更新
我成功地部署了股票jhipster应用到t1.micro上弹性魔豆(最小)的实例,同时连接到亚马逊RDS PostgreSQL的数据源。此实例符合免费级(1年)的条件,并为您提供1GB内存。我必须做的唯一配置更改是将JVM堆+ PermGen空间分别提高到512MB和128MB。这与运行“mvn package -Pprod”一样简单,然后将app_name.war.original(没有嵌入tomcat的那个)并将其部署到实例Tomcat服务器。
在这里,在几乎无负荷运转是从UI的JVM统计:
我是JHipster首席开发人员:我不知道这个.slugignore文件,你可以创建一张票并给我们你的配置吗?我想有一个heroku子生成器 –
slu are的细节在这里:https://devcenter.heroku.com/articles/slug-compiler。听起来最好的方法将是@jbaris在下面提到的使用自定义构建包的地方,从https://github.com/heroku/heroku-buildpack-java派生出来。 jhipster-heroku子生成器可能包含procfile,system.properties和.slugignore,但用户仍然需要创建一个指定定制buildpack的应用程序。 – CMikeB1
两个问题,@ CMikeB1提到的可以通过使用自定义buildpack来解决。有一个连接java和node的分支:https://github.com/lordviktor/heroku-buildpack-java-node-yeoman-submodule。我已经分叉这个去除了.m2目录并且减少了de slug的尺寸https://github.com/jbaris/heroku-buildpack-java-node-yeoman-submodule。
Buuut,有两个新问题:
错误R14(内存超出配额):免费的帐户有512 MB的RAM:这将导致DYNOS交换和损耗性能。考虑默认的JHipster应用程序需要大约800 MB的RAM。
错误R10(引导超时) - > Web进程无法在启动60秒内绑定到$ PORT:如果应用程序在启动60秒内无法启动,则认为它已崩溃。
请注意,第一个问题会影响第二个问题。我的(当前)结论:Heroku免费帐户与JHipster不兼容:S
我会尝试Amazon Elastic Beanstalk。你有没有推荐另一种选择?
在连接到Amazon RDS PostgreSQL数据源时,我成功地将库存jhipster应用程序部署到了Elastic Beanstalk上的t1.micro(最小)实例。此实例符合免费级(1年)的条件,并为您提供1GB内存。我必须做的唯一配置更改是抽取JVM堆+ PermGen空间。 – CMikeB1
我已经开始了Heroku的子发生器JHipster,使用您的评论:
https://github.com/jhipster/generator-jhipster/tree/master/heroku
我已经有工作,我只是需要一些调整,它成为官方之前。
关于内存和启动超时问题,我得到了两个工作正常。
鉴于使用jhipster 1.0生成的应用程序,我如何使用https://github.com/jhipster/generator-jhipster/tree/master/heroku?我试过哟jhipster:heroku,但它并没有增加任何新的东西,所以我想我忘了下载或更新的东西。 – ilopezluna
我刚开始它,它还没有发布。您需要使用Git存储库中的开发版本。 –
好的,所以我应该克隆https://github.com/jhipster/generator-jhipster并以某种方式进行编译,以便从github的开发版本中替换我的jhipster生成器。在哪里可以找到有关如何编译它的文档?我看到用java 1.8的system.properties,是否需要? – ilopezluna
我已经部署了一个应用程序的Heroku成功地(https://smallgis.herokuapp.com/#/login),你应该建立在Heroku的一个应用程序,并安装MLAB加上(MongoDB的在我的情况),你应该总是十个分量的300 MB的段塞尺寸较小。将您的项目链接到您创建的heroku应用程序。
的Heroku登录
创建一个新的Git仓库
在新的或现有的目录
- CD我的项目/
- 的git的init
- Heroku的git的初始化git仓库:remote -a appname
部署您的应用程序
- git add。
- git的承诺-m“变化......”
- 混帐推Heroku的主(它建立并压缩所有的应用程序,你可以 在默认的Heroku应用程序URL可视化)
- 1. JHipster Microservices应用程序部署到CloudFoundry
- 2. 将Heroku应用程序部署到Heroku
- 3. 部署Meteor + Angular2应用程序到Heroku
- 4. 部署应用程序到Heroku
- 5. 部署到Heroku应用程序错误
- 6. 部署到Heroku,Rails应用程序
- 7. 部署Java.war应用程序到Heroku
- 8. 将应用程序部署到Heroku
- 9. 部署Flask应用程序到Heroku
- 10. Heroku部署到Heroku的Rails应用程序的问题
- 11. 在heroku上部署playframework应用程序
- 12. 向Heroku部署Play 2.2.1应用程序
- 13. 在Heroku上部署Sinatra应用程序
- 14. 在Heroku中部署rails应用程序
- 15. Heroku部署应用程序错误
- 16. 在Heroku上部署Python应用程序
- 17. 在Heroku上部署Django应用程序
- 18. 部署Django应用程序,以Heroku的
- 19. 应用程序错误。 Heroku部署
- 20. 部署的Node.js应用程序的Heroku
- 21. Heroku - Git /部署应用程序错误
- 22. Laravel - 在Heroku上部署应用程序
- 23. 在Heroku上部署Rails应用程序
- 24. 向Heroku部署仅HTML应用程序?
- 25. 在Heroku上部署Github应用程序
- 26. Heroku Django应用程序部署超时
- 27. 在Heroku上部署Spring应用程序
- 28. 部署Rails应用程序在Heroku
- 29. 部署后Heroku应用程序崩溃
- 30. Heroku部署Django应用程序失败
我有它的工作直到Heroku上周更新了我的数据库。现在它不起作用。 –