-
-
Save witscher/2924017 to your computer and use it in GitHub Desktop.
description "Tomcat Server" | |
start on runlevel [2345] | |
stop on runlevel [!2345] | |
respawn | |
respawn limit 10 5 | |
# run as non privileged user | |
# add user with this command: | |
## adduser --system --ingroup www-data --home /opt/apache-tomcat apache-tomcat | |
# Ubuntu 12.04: (use 'exec sudo -u apache-tomcat' when using 10.04) | |
setuid apache-tomcat | |
setgid www-data | |
# adapt paths: | |
env JAVA_HOME=/opt/java | |
env CATALINA_HOME=/opt/apache-tomcat | |
# adapt java options to suit your needs: | |
env JAVA_OPTS="-Djava.awt.headless=true -Xms512M -Xmx1024M -server -XX:+UseParallelGC" | |
exec $CATALINA_HOME/bin/catalina.sh run | |
# cleanup temp directory after stop | |
post-stop script | |
rm -rf $CATALINA_HOME/temp/* | |
end script |
now optimized for Ubuntu 12.04
@witscher How do you redirect stdout and stderr for catalina.sh to a log file like catalina.out?
Don't you need an expect stanza? What happens when you do a initctl status tomcat?
expect is not needed, status displays like this:
tomcat start/running, process
@brianwb Since newer upstart versions (12.04) stdout and stderr go into /var/log/upstart/tomcat.log, so theres no need to catch it in the script
you should use CATALINA_OPTS for heap/server/gc settings; java_opts is passed even when other commands are issued on the 8005 port, even though this is unused by this config file.
See my fork for an example:
hi all,
when I set:
setuid tomcat setgid www-data
start tomcat can't boot up tomcat. My tomcat only can boot up when I remove above setuid and setgid. I added tomcat user to www-data as you can see:
groups tomcat
tomcat : www-data
does anyone know what seem to be wrong?
Thanks
never mind, I got it! Thanks
Hello,
Did you try it with tomcat 8?
Can you see any reason why it would not work?
Clem
Confirmed working with tomcat 8.
Pls How do i run the tomcat as root user
Thank you so much for this dude, and for anyone reading this, the key to this is the run
parameter versus the start
parameter. I'd imagine that the latter causes it to fork in a way that breaks upstart (well documented).
Stumbling upon this saved my eyeballs a pending gouging. ;)
works for both tomcat 6 and tomcat 7, tested on Ubuntu 10.04 x64