我是 Play Framework (2.0.4) 的新手。我开发了一个小应用程序并在内置的播放框架 Web 服务器上本地运行它。现在我想将它部署在远程服务器(APPFOG.COM 或任何其他 Web 服务器)上。有人可以指导我如何远程部署它。
是否必须创建war文件,如果是,请指导我如何创建它并将其部署在远程服务器上。
如果有其他方法,请在这方面指导我。
提前致谢
我是 Play Framework (2.0.4) 的新手。我开发了一个小应用程序并在内置的播放框架 Web 服务器上本地运行它。现在我想将它部署在远程服务器(APPFOG.COM 或任何其他 Web 服务器)上。有人可以指导我如何远程部署它。
是否必须创建war文件,如果是,请指导我如何创建它并将其部署在远程服务器上。
如果有其他方法,请在这方面指导我。
提前致谢
最好看的地方是 Github 上的 Play 文档:https ://github.com/playframework/Play20/wiki/Production
在本文档中,您将找到几种在多个提供商上部署应用程序的方法:
但是,如果您想在 servlet 容器中部署 Play2 应用程序(即作为战争),请查看play2-war-plugin。
您无需在应用服务器(如 tomcat)或使用 WAR 文件格式部署您的 play 应用程序。Play 已经自带了自己的捆绑服务器。
对于 Play 2.6 版:“Play 现在使用Akka-HTTP服务器引擎作为默认后端。”
过去的版本默认使用Netty 。它仍然受支持,但必须显式配置。
要部署您的应用程序,您需要创建一个分发包以在您的项目主文件夹上运行:
sbt dist
创建二进制分发:“这会生成一个 ZIP 文件,其中包含在应用程序的目标/通用文件夹中运行应用程序所需的所有 JAR 文件。
要运行应用程序,请在目标服务器上解压缩文件,然后运行 bin 目录中的脚本。脚本的名称是您的应用程序名称,它有两个版本,一个 bash shell 脚本和一个 windows .bat 脚本。”
这些是部署应用程序的步骤:
sbt dist
playGenerateSecret
unzip my-first-app-1.0.zip
my-first-app-1.0/bin/my-first-app -Dplay.http.secret.key=abcdefghijk
在此处查看有关部署说明的更多详细信息。
您可能还想使用SBT Native Packager研究其他部署格式,因为它为各种格式提供工件生成功能,包括:
看看这个,如果您希望自动化您的 Play 应用部署,可能会有所帮助
最近写了一篇文章,展示了使用 supervisor 和 monit 部署完整证明的可自重加载播放应用程序的步骤。
我写这篇文章是因为 play 部署文档在撰写本文时没有解决问题的方法,例如由于 tun 时间异常导致的失败或由于内存泄漏导致的应用程序挂起。Monit 是监控后台运行的进程的绝佳工具。 http://www.ravinderpayal.com/Deploying-Play-Scala-application-into-production-by-Ravinder-Payal/