java - How do I run a spring boot executable jar in a Production environment?
Spring boot's preferred deployment method is via a executable jar file which contains tomcat inside.

Please note that since Spring Boot 1.3.0.M1, you are able to build fully executable jars using Maven and Gradle. 
For Maven, just include the following in your pom.xml:
<plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
    <configuration>
        <executable>true</executable>
    </configuration>
</plugin>

For Gradle add the following snippet to your build.gradle:
springBoot {
    executable = true
}

The fully executable jar contains an extra script at the front of the file, which allows you to just symlink your Spring Boot jar to init.d or use a systemd script.
init.d example:
$ln -s /var/yourapp/yourapp.jar /etc/init.d/yourapp

This allows you to start, stop and restart your application like:
$/etc/init.d/yourapp start|stop|restart

Or use a systemd script:
[Unit]
Description=yourapp
After=syslog.target

[Service]
ExecStart=/var/yourapp/yourapp.jar
User=yourapp
WorkingDirectory=/var/yourapp
SuccessExitStatus=143

[Install]
WantedBy=multi-user.target

More information at the following links:

Installation as an init.d service
Installation as a systemd service

