更新08.18.2012
我使用的是Play 2.0.2,我想将我的应用程序部署到。我认为最简单的方法是通过Elasticbean茎。
我用Play2war来打包我的应用程序https://github.com/dlecan/play2-war-plugin/
我能把它包装起来
play war根据play2war的使用指南,我将文件重命名为ROOT.war,因为我使用的是Linux32bit Tomcat7。
我还使用了Servlet3.0,如play2war教程中所述。(tomcat 7 -> Servlet3.0)。
文件大小为31 is。
每次我使用黄豆柄,我都会得到同样的原木。
2012-08-18 00:25 GMT+0200
WARN
Environment health has been set to RED
2012-08-18 00:25 GMT+0200
INFO
Launched environment: elosource. However, there were issues during launch. See event log for details.
2012-08-18 00:25 GMT+0200
INFO
Your health check URL may be misconfigured. If your application does not respond to requests at http://elosource.elasticbeanstalk.com:80/, modify the health check URL to a valid path.我用Linux32/64位、Tomcat7(servlet 3)和Tomcat6(servlet2.5)进行了测试。我总是得到同样的结果。
我还尝试为健康检查器添加一个额外的html文件。
发布于 2012-08-21 20:15:41
好吧,我知道这不是你问题的直接答案,因为我没有用豆茎,但正如你在其中一个评论中所要求的:
下面是如何在安装了jvm的linux实例上运行play2应用程序:
play dist。dist/yourapp-1.0-SNAPSHOT.zip文件(或您配置的任何dist名称)发送到EC2实例cdchmod +x startnohup ./start &现在,您的play2应用程序可以在EC2上本地运行,带有websocket和所有很酷的东西。我不需要在游戏中配置任何特殊的东西才能让它发挥作用。我使用的是一个RDS数据库,它被配置为任何其他数据库。
显然,这比豆茎麻烦多了,因为您必须自己配置服务器并手动设置自动标号。但这是我目前发现的在AWS上运行带有所有特性的play2的最佳方式。
我希望这能帮到你。
发布于 2012-08-18 09:58:47
您不应该将您的应用程序打包为war,除非您有义务或有一个很好的理由作为框架的你将失去伟大的功能。 (即使是Servlet3.0 您将错过websocket支持。)。
一种选择是通过dotCloud服务部署应用程序。该服务运行在亚马逊EC2之上,使您能够轻松地选择堆栈和垂直缩放。当然,您必须决定它是否是物有所值,但您可以免费进行测试。
还有其他PaaS提供程序,它们允许您部署play 2应用程序:
发布于 2012-08-12 03:54:42
INFO: The APR based Apache Tomcat Native...不是重要的部分。Tomcat将在没有它的情况下启动,编译它将不会使您的实例健康。实际上,您的catalina.out日志记录看起来完全正常。
我猜Bean秸秆的错误消息是准确的:您有一个配置错误的健康检查URL。无论出于什么原因,您的应用程序只是没有在端口80上返回根文档,这个问题可能会以几种方式出现。尝试将静态html或简单的jsp页面添加到应用程序的根目录(WAR中的顶层),并让Bean秸秆检查它。Bean秸秆的默认端口配置应该可以工作(如果我记得它通过apache将流量传递给tomcat并返回,但我已经有一段时间没看过了),但是只要检查$CATALINA_HOME/conf/server.xml以查看发生了什么,也不会有什么影响。
https://stackoverflow.com/questions/11918820
复制相似问题