In this tutorial, we will show you how to install Apache Tomcat 8 On Debian, manually.know more with www.vcclhosting.com Blog
Environment :
- Debian 7
- JDK 1.8
- Apache Tomcat 8
- Buy Cloud KVM Server for best results and 24-7 support.
P.S Assume the JDK 1.8 is installed in
/opt/jdk
folder. Refer to this guide to install Oracle JDK 8 on Debian.
Note
On Debian 7, the Tomcat 8 is not included in the default apt-get repository.
On Debian 7, the Tomcat 8 is not included in the default apt-get repository.
Note
This guide should work in other Debian derivatives like Ubuntu or Mint.
This guide should work in other Debian derivatives like Ubuntu or Mint.
1. Get Tomcat 8
1.1 Visit Tomcat 8 page and download the tar.gz file.
1.2 In this example, we get the version 8.0.30 via
wget
command.$ cd /opt $ sudo wget http://www.eu.apache.org/dist/tomcat/tomcat-8/v8.0.30/bin/apache-tomcat-8.0.30.tar.gz
2. Extracts to /opt/tomcat8
2.1 Extracts it to path
/opt/tomcat8
$ pwd /opt $ sudo tar -xvzf apache-tomcat-8.0.30.tar.gz $ mv apache-tomcat-8.0.30 tomcat8 $ ls -lsh 4.0K drwxr-xr-x 6 root root 4.0K Dec 27 09:16 . 4.0K drwxr-xr-x 23 root root 4.0K Feb 26 2014 .. 8.8M -rw-r--r-- 1 root root 8.8M Dec 1 17:56 apache-tomcat-8.0.30.tar.gz 4.0K drwxr-xr-x 3 root root 4.0K Dec 27 09:06 jdk 4.0K drwxr-xr-x 9 root root 4.0K Dec 27 09:16 tomcat8
3. Create a Tomcat user
3.1 Review the extracted tomcat8 folder, which is belonging to “root” user. For good practice, we should create a new user to run the Tomcat. In this example, we will create a non-login user “tomcat”, and set his home to
/opt/tomcat/temp
(anywhere you want).#Usage : useradd -s -d $ sudo useradd -s /sbin/nologin -d /opt/tomcat/temp tomcat
3.2 Change permissions of the
/opt/tomcat8
folder, so that the new “tomcat” user can run the Tomcat.$ sudo chown -R tomcat:tomcat /opt/tomcat8 $ pwd /opt $ls -lsh 8.8M -rw-r--r-- 1 root root 8.8M Dec 1 17:56 apache-tomcat-8.0.30.tar.gz 4.0K drwxr-xr-x 3 root root 4.0K Dec 27 09:06 jdk 4.0K drwxr-xr-x 9 tomcat tomcat 4.0K Dec 27 09:16 tomcat8
4. /etc/init.d/tomcat8
To run Tomcat as a init service, create a custom script and put it in the
/etc/init.d
folder.
4.1 Create a script and save it as
/etc/init.d/tomcat8
$ sudo vim /etc/init.d/tomcat8
/etc/init.d/tomcat8
#!/bin/bash # #https://wiki.debian.org/LSBInitScripts ### BEGIN INIT INFO # Provides: tomcat8 # Required-Start: $local_fs $remote_fs $network # Required-Stop: $local_fs $remote_fs $network # Should-Start: $named # Should-Stop: $named # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Start Tomcat. # Description: Start the Tomcat servlet engine. ### END INIT INFO export CATALINA_HOME=/opt/tomcat8 export JAVA_HOME=/opt/jdk/jdk1.8.0_66 export PATH=$JAVA_HOME/bin:$PATH start() { echo "Starting Tomcat 8..." /bin/su -s /bin/bash tomcat -c $CATALINA_HOME/bin/startup.sh } stop() { echo "Stopping Tomcat 8..." /bin/su -s /bin/bash tomcat -c $CATALINA_HOME/bin/shutdown.sh } case $1 in start|stop) $1;; restart) stop; start;; *) echo "Usage : $0 " ; exit 1;; esac exit 0
Note
This simple Tomcat init script is running in one of my servers, and I believe it is enough to control the Tomcat. If you are looking for more advanced features, try visiting this Tomcat init script
This simple Tomcat init script is running in one of my servers, and I believe it is enough to control the Tomcat. If you are looking for more advanced features, try visiting this Tomcat init script
4.2 Assign “execute” permission.
$ sudo chmod 755 /etc/init.d/tomcat8 #Review permission $ ls -lsh /etc/init.d/tomcat8 4.0K -rwxr-xr-x 1 root root 859 Dec 27 22:07 /etc/init.d/tomcat8
4.3 Install the script.
$ sudo update-rc.d tomcat8 defaults
4.4 Test it
$ sudo service tomcat8 Usage : /etc/init.d/tomcat8 <start|stop|restart> #Start Tomcat... $ sudo service tomcat8 start Starting Tomcat 8... Using CATALINA_BASE: /opt/tomcat8 Using CATALINA_HOME: /opt/tomcat8 Using CATALINA_TMPDIR: /opt/tomcat8/temp Using JRE_HOME: /opt/jdk/jdk1.8.0_66 Using CLASSPATH: /opt/tomcat8/bin/bootstrap.jar:/opt/tomcat8/bin/tomcat-juli.jar Tomcat started. #Stop Tomcat... $ sudo service tomcat8 stop Stopping Tomcat 8... Using CATALINA_BASE: /opt/tomcat8 Using CATALINA_HOME: /opt/tomcat8 Using CATALINA_TMPDIR: /opt/tomcat8/temp Using JRE_HOME: /opt/jdk/jdk1.8.0_66 Using CLASSPATH: /opt/tomcat8/bin/bootstrap.jar:/opt/tomcat8/bin/tomcat-juli.jar
Visit Tomcat default URL : http://localhost:8080
Done.
6. Extras…
6.1 To deploy a
WAR
file, just copy the WAR file in the /opt/tomcat8/webapps/
folder. Restart Tomcat, the war file will be extracted and deployed automatically.- Example –
/opt/tomcat8/webapps/lovejava.war
- Deployed URL – http://localhost:8080/lovejava
6.2 To change the default port (8080), just update the connector port to another port number and restart Tomcat.
/opt/tomcat8/conf/server.xml
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
6.3 Make the web app as the default path.
/opt/tomcat8/conf/server.xml
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true"> <!-- update here --> <Context path="" docBase="lovejava"> <!-- Default set of monitored resources --> <WatchedResource>WEB-INF/web.xml</WatchedResource> </Context> </Host>
- Before : http://localhost:8080/lovejava
- After : http://localhost:8080/
- Contact Support for more details : support@vcclhosting.com .Create account first at www.vcclhosting.com
Now, we can access the
/lovejava
web app via this URL http://localhost:8080/
Comments
Post a Comment