Playframework Cloudbees 504网关超时部署Play Framework应用程序

Playframework Cloudbees 504网关超时部署Play Framework应用程序,playframework,playframework-2.1,cloudbees,Playframework,Playframework 2.1,Cloudbees,我是云蜂新手。我遵循这里的说明: 我可以在本地运行play web应用程序而不会出现问题。此外,我已经成功地部署到Heroku,但当我得知WebSocket不受支持时,我切换到Cloudbees 然而,当我尝试部署到cloudbees时,我得到了一个504网关超时。我漏了一步吗?我觉得使用Cloudbees SDK可以在不使用SBT插件的情况下进行部署 C:\play-2.1.0\samples\java\websocket-chat>play dist [info] Loading pr

我是云蜂新手。我遵循这里的说明:

我可以在本地运行play web应用程序而不会出现问题。此外,我已经成功地部署到Heroku,但当我得知WebSocket不受支持时,我切换到Cloudbees

然而,当我尝试部署到cloudbees时,我得到了一个504网关超时。我漏了一步吗?我觉得使用Cloudbees SDK可以在不使用SBT插件的情况下进行部署

C:\play-2.1.0\samples\java\websocket-chat>play dist
[info] Loading project definition from C:\play-2.1.0\samples\java\websocket-chat
\project
[info] Set current project to websocket-chat (in build file:/C:/play-2.1.0/sampl
es/java/websocket-chat/)
[info] Wrote C:\play-2.1.0\samples\java\websocket-chat\target\scala-2.10\websock
et-chat_2.10-1.0.pom

Your application is ready in C:\play-2.1.0\samples\java\websocket-chat\dist\webs
ocket-chat-1.0.zip

[success] Total time: 4 s, completed Jun 20, 2013 2:53:34 PM

C:\play-2.1.0\samples\java\websocket-chat>bees app:deploy -a my_username/chatroom
 -t play2 dist/websocket-chat-1.0.zip
Deploying application my_username/chatroom (environment: ): dist\websocket-chat-1
.0.zip
Application parameters: {containerType=play2}
........................uploaded 25%
........................uploaded 50%
........................uploaded 75%
........................upload completed
deploying application to server(s)...
Application my_username/chatroom deployed: http://chatroom.my_username.cloudbees.n
et

C:\play-2.1.0\samples\java\websocket-chat>bees app:proxy:update -a my_username/cha
troom1 httpVersion=1.1
Are you sure you want to update this application proxy [my_username/chatroom]: (y
/n) y
application proxy for my_username/chatroom : updated

C:\play-2.1.0\samples\java\websocket-chat>
如果你跑

bees app:tail -a username/appname
再看一看这些日志,也许会有一些启示。 另外,您可以在本地解压dist,并尝试运行它。从dist运行有时可能与从play命令运行略有不同(不幸的是play是这样工作的,Heroku在非生产模式下运行它)


但是日志应该会有所启发——否则,如果您可以使用您的帐户打开票据,那么我们可以研究具体情况(因此您不必在这里说!)。

我能够使用Cloudbees文档中描述的SBT方法进行部署:此文档相当全面

公平地说,安装Cloudbees SDK很有帮助,因此我在安装SBT插件时不必安装配置文件

C:\play-2.1.0\samples\java\websocket-chat>play dist
[info] Loading project definition from C:\play-2.1.0\samples\java\websocket-chat
\project
[info] Set current project to websocket-chat (in build file:/C:/play-2.1.0/sampl
es/java/websocket-chat/)
[info] Wrote C:\play-2.1.0\samples\java\websocket-chat\target\scala-2.10\websock
et-chat_2.10-1.0.pom

Your application is ready in C:\play-2.1.0\samples\java\websocket-chat\dist\webs
ocket-chat-1.0.zip

[success] Total time: 4 s, completed Jun 20, 2013 2:53:34 PM

C:\play-2.1.0\samples\java\websocket-chat>bees app:deploy -a my_username/chatroom
 -t play2 dist/websocket-chat-1.0.zip
Deploying application my_username/chatroom (environment: ): dist\websocket-chat-1
.0.zip
Application parameters: {containerType=play2}
........................uploaded 25%
........................uploaded 50%
........................uploaded 75%
........................upload completed
deploying application to server(s)...
Application my_username/chatroom deployed: http://chatroom.my_username.cloudbees.n
et

C:\play-2.1.0\samples\java\websocket-chat>bees app:proxy:update -a my_username/cha
troom1 httpVersion=1.1
Are you sure you want to update this application proxy [my_username/chatroom]: (y
/n) y
application proxy for my_username/chatroom : updated

C:\play-2.1.0\samples\java\websocket-chat>
然而,我转向GitHub项目来配置SBT,因为Cloudbees文档可能稍微落后。sbt cloudbees play插件代码/文档可在此处找到:

我必须承认我不完全理解使用SBT的部署。我的项目现在成功地出现在web上(并与WebSocket一起工作!),但我仍然得到了这些命令行输出。我不确定它目前是否会影响性能。我把它包括在下面作为参考,用省略号跳过了不感兴趣的部分

java.lang.ExceptionInInitializerError
        at cloudbees.Plugin$.cloudbees$Plugin$$performDeploy(cloudbees.scala:236
)
        at cloudbees.Plugin$$anonfun$deployTask$1.apply(cloudbees.scala:108)
        at cloudbees.Plugin$$anonfun$deployTask$1.apply(cloudbees.scala:105)

...

Caused by: edu.stanford.ejalbert.exception.BrowserLaunchingInitializingException
: unable to find config file: /edu/stanford/ejalbert/launching/windows/windowsCo
nfig.properties

...

WARNING

Looks like you are using a deprecated version of Play's SBT Project (PlayProject
 in project/Build.scala).
We are adding all of the new Play artifacts to your libraryDependencies for now
but consider switching to the new API (i.e. play.Project).

For any migration related issues, please consult the migration manual at http://
www.playframework.org
...

如果我们需要我的帐户信息,我会开一张罚单,但希望我们能在这里对这个问题做出裁决。我的日志显示我正在收听0.0.0.0:8660。我不确定这是否正确。我的服务器日志:
Play服务器进程ID是28917[[37minfo[0m]Play-应用程序已启动(Prod)[[37minfo[0m]Play-在/0.0.0:8660上侦听HTTP
我尝试了zip部署方法,现在我得到了一个502错误。日志说明了“找不到主类:Play.core.server.NettyServer。程序将退出。”好的,我可以找到你的应用程序(第一个)-它在它正在侦听的端口上没有响应-我不知道为什么。你应用程序的“dist”可能与“play run”不同是否-尝试解压dist并在本地运行,以查看它是否响应。Play因某种原因而挂起-不确定原因。如果您可以运行,可能值得打开一张票证并上载dist,以便我们查看它。鉴于它使用websocket,您能部署一个更简单的“初学者”吗播放2个应用程序以确保机器的dist正常工作,然后继续运行到你的dist?因为我想知道问题出在dist附近,或者你的应用程序代码+dist。另外-忽略你的第二个应用程序-压缩整个程序将不起作用-你可以删除该应用程序。听到这个消息很好-play命令是sbt-所以这只是挂接到它。我举个例子pect它比dist更好地处理任何文件怪癖/权限-我注意到您在windows上。部署时,该错误发生在命令行上-我接受它?我不担心这种情况-看起来是windows特有的-看起来它不想找到浏览器可执行文件,以便在浏览器中启动应用程序(只是方便,不需要!)