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

时间:2015-04-05 16:31:50

标签: grails web-deployment

我的Grails应用程序基于

  • Gradle with Grails 2.4.4,
  • Tomcat插件7.0.55,
  • 和MySQL插件(mysql:mysql-connector-java:5.1.29)。

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

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

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

3 个答案:

答案 0 :(得分:1)

容器

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

这通常没什么不错的选择,因为许多WAR部署的应用程序无论如何都不需要任何完整的容器功能,您可以为您的配置所有内容工作量并不必为所有正在进行的战争(或你的运营团队)妥协。在缺点方面,如果容器存在安全问题等,则必须滚动一个新罐。

/使用Grails 3,它使用Spring Bootstrap,这是一个默认选项,因为首选的部署方式。 Spring Boot 1.2默认支持Tomcat,Jetty和Undertow ./

数据库

你可以使用某些地方的某个地方的#?其他。但这是挑剔,因为你真的需要一个MySQL 某个地方(顺便说一句:你真的应该开始使用MySQL也为你的开发环境,或者一旦你把你的东西放到一边你会有一些惊喜生产)。

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

答案 1 :(得分:0)

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

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

但是在制作时,你使用'grails war命令'创建你的应用程序的战争,你就像任何其他战争一样将这个战争部署到一个Web容器,所以你需要tomcat,你也需要安装mysql。

答案 2 :(得分:0)

总之,答案是'是'。

事实上,当你在开发环境中时,grails用作'Apache Tomcat插件'提供的嵌入式tomcat服务器,该版本对应于grails版本。

你没有安装mysql,你声称'它似乎正常工作'。那很好笑!但是不是mysql在没有安装的情况下工作(!),而是它也是'H2数据库插件'提供的集成数据库。

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

相关问题