我已经在 Play 框架 2.5.6 上创建了一个应用程序。我试图找出在生产环境中部署应用程序的最佳方式。我在我的 Ubuntu 机器上安装了 tomcat。如何创建war文件以及如何在tomcat上部署?我正在使用 Scala Eclipse IDE 进行开发。
最佳答案
看看at this other thread这与您在这里提出的问题非常相似(尽管是针对 GAE)。
简而言之,将您的应用程序部署到 Tomcat 的缺点是:-
- 您有额外的工作要做,将您的应用程序打包为 WAR
- 部署它的额外工作
- 您的应用程序可能不是在 Tomcat 中完全异步运行的
正如那个过时的文档所建议的那样 - 在生产中部署应用程序的最简单方法就是使用 Netty 的版本它被打包为 Play 应用程序的一部分。见the docs的相关版本创建一个分布。在这种情况下,您只需要在生产服务器上安装相关版本的 JVM。
流程一般是:-
- 运行
$ dist
构建二进制文件(默认情况下这是一个 zip,但如果您更喜欢使用$ universal:packageZipTarball
而不是dist
,也可以使用 build a tar)。 - 将其移至您的 Linux 生产环境
- 解压
- 如果您构建一个 zip,请设置权限
$ chmod +x /path/to/bin/<project-name>
(如果您创建了 tar,则不需要) - 运行应用程序启动脚本(由
dist
任务创建),例如。$ target/universal/stage/bin/<project-name>
关于scala - 在 Tomcat 或任何替代方案上 Play 2.5.6 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39438816/