我需要在Linux服务器上安装Tomcat和MySQL来部署Grails应用程序吗



我的Grails应用程序基于

  • Gradle with Grails 2.4.4
  • Tomcat插件7.0.55
  • 和MySQL插件(MySQL:MySQL连接器java:5.1.29)

我需要在服务器上安装Tomcat吗?

我需要在服务器上安装MySQL吗?

Tomcat和MySQL都没有安装在开发环境中(在我的电脑上),但它似乎可以工作。

容器

虽然所有其他答案都指出,你已经需要一个容器(这当然是真的),但也可以选择使用";独立的";插件(例如。https://grails.org/plugin/standalone)。这将把你的应用程序打包为一个胖罐子,容器和应用程序是罐子的一部分,你只需通过java -jar myapp.jar运行(当然,你会把它集成到服务器上的常规启动脚本中)。

这通常是一个不错的选择,因为许多WAR部署的应用程序无论如何都不需要任何完整的容器功能,并且您可以为您的工作负载配置所有内容,并且不必为所有正在运行的WAR(或您的操作团队)妥协。不利的一面是,如果容器存在安全问题等,您将不得不推出一个新的罐子。

/对于使用Spring Bootstrap的grails 3,这甚至是一个默认选项,因为这是首选的部署方式。Spring Boot 1.2默认支持Tomcat、Jetty和Undertow。/

数据库

您可以使用MySQL从";"某处";其他的但这是挑剔的,因为你真的需要一个MySQL(顺便说一句:你真的应该开始在你的开发环境中使用MySQL,否则一旦你把你的东西投入生产,你会有一些惊喜)。

还要注意,您还可以继续使用H2(请参阅数据源配置)和文件。对于您正在存储的少量数据,这是一个OK选项(可以使您免于安装数据库服务器),还有其他免费的数据库服务器,如PostgreSQL。

显然,您必须在服务器上安装mysql和tomcat。

在开发过程中,你可以从控制台运行grails,所以你不需要tomcat,因为它将使用嵌入式tomcat,但如果你想使用mysql,你仍然需要安装mysql。

但在生产中,您使用"grails war命令"创建应用程序的war,并像其他war一样将此war部署到web容器中,因此您需要tomcat,也需要安装mysql。

用一个词来说,答案是"是"。

事实是,当您处于grails用作"Apache tomcat插件"提供的嵌入式tomcat服务器的开发环境中时,该版本对应于grails版本。

您还没有安装mysql,并且声称"它似乎可以工作"。真有趣!但不是mysql在没有安装的情况下工作(!),而是它也是由"H2数据库插件"提供的集成数据库。

因此,当您在Linux或其他服务器中部署grails应用程序时,您当然需要一个tomcat服务器来处理用户对该应用程序的请求,以及一个保存数据的数据库。

最新更新