Ref 2
Ref 3
Goal
I'd like to be able to use the upstream/downloaded Tomcat, running as a standalone, serving 80/443 ports, and starting automatically with system boot.Below is based on vanilla Ubuntu 16.04 image from Google Compute Engine.
How
Install Java
sudo apt install default-jdk-headless
Add tomcat user and group
With--system
so that this user could not sign in system.
sudo addgroup --system tomcat
sudo adduser --system --ingroup tomcat tomcat
Unpack Tomcat installation
Download apache-tomcat-8.0.35.tar.gz. Then:tar xf apache-tomcat-8.0.35.tar.gz
sudo mv apache-tomcat-8.0.35 /home/tomcat/
sudo chown tomcat:tomcat -R /home/tomcat/apache-tomcat-8.0.35
Install and configure authbind
sudo apt install authbind
sudo touch /etc/authbind/byport/{443,80}
sudo chmod 500 /etc/authbind/byport/{443,80}
sudo chown tomcat:tomcat /etc/authbind/byport/{443,80}
Configure Tomcat
sudo sed -i 's/8080/80/g' /home/tomcat/apache-tomcat-8.0.35/conf/server.xml
sudo sed -i 's/8443/443/g' /home/tomcat/apache-tomcat-8.0.35/conf/server.xml
Configure authbind
Then paste in the content:sudo vim /etc/systemd/system/tomcat.service
After saving:[Unit] Description=Tomcat Container After=network.target [Service] Type=forking Environment=JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/jre Environment=CATALINA_PID=/home/tomcat/tmp/tomcat.pid Environment=CATALINA_HOME=/home/tomcat/apache-tomcat-8.0.35 Environment=CATALINA_BASE=/home/tomcat/apache-tomcat-8.0.35 ExecStart=/home/tomcat/apache-tomcat-8.0.35/bin/startup.sh ExecStop=/home/tomcat/apache-tomcat-8.0.35/bin/shutdown.sh User=tomcat Group=tomcat RestartSec=10 Restart=always [Install] WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable tomcat.service
sudo systemctl restart tomcat.service
3 comments:
thanks...you save my time!
Thanks alot... Loved it..
thanks
Post a Comment