2.10 Deploying an Application - Reference Documentation
Authors: Graeme Rocher, Peter Ledbrook, Marc Palmer, Jeff Brown, Luke Daley, Burt Beckwith, Lari Hotari
Version: 3.1.1
2.10 Deploying an Application
Grails applications can be deployed in a number of different ways.If you are deploying to a traditional container (Tomcat, Jetty etc.) you can create a Web Application Archive (WAR file), and Grails includes the war command for performing this task:grails war
build/libs
directory which can then be deployed as per your container's instructions.Note that by default Grails will include an embeddable version of Tomcat inside the WAR file, this can cause problems if you deploy to a different version of Tomcat. If you don't intend to use the embedded container then you should change the scope of the Tomcat dependencies to provided
prior to deploying to your production container in build.gradle
:provided "org.springframework.boot:spring-boot-starter-tomcat"
development
environment unless overridden, the war
command runs in the production
environment by default. You can override this like any script by specifying the environment name, for example:grails dev war
grails war java -Dgrails.env=prod -jar build/libs/mywar-0.1.war
-server
option and with sufficient memory allocation. A good set of VM flags would be:-server -Xmx768M -XX:MaxPermSize=256m