HOW TO INSTALL TOMCAT ON CENTOS 7
- Server Administration
- 3,661 views
- Marcus J.

This tutorial is based on CentOS 7.0 server, so you should set up a basic CentOS 7.0 server installation before you continue with this tutorial. The system should have a static IP address. I use 192.168.0.100 as my IP address in this tutorial and server1.example.com as the hostname.
To start the installation of Tomcat we need to first install java-1.7.0-openjdk.x86_64, we will install it as follows:
1 yum install java–1.7.0–openjdk.x86_64
Check the version of java as follows:
[root@server1 ~]# java -versionjava version “1.7.0_65”OpenJDK Runtime Environment (rhel–2.5.1.2.el7_0–x86_64 u65–b17)OpenJDK 64–Bit Server VM (build 24.65–b04, mixed mode)[root@server1 ~]#
Proceeding further we need some essential packages. CentOS don’t come with ifconfig command, so we will install net-tools and other packages as follows:
1 yum install net–tools unzip wget
Now we will download the latest Tomcat version from its home page and install it as:
cd /optwget http://ftp.nluug.nl/internet/apache/tomcat/tomcat–8/v8.0.9/bin/apache–tomcat–8.0.9.zipunzip apache–tomcat–8.0.9.zipmv apache–tomcat–8.0.9 tomcat
Unzip it and set the environment variables by creating a file script.sh in /etc/profile.d/ as:
1 | vi /etc/profile.d/script.sh |
Give the entries as follows:
#!/bin/bashCATALINA_HOME=/opt/tomcatPATH=$CATALINA_HOME/bin:$PATHexport PATH CATALINA_HOMEexport CLASSPATH=.
Now we will give execute permissions to the file:
1 chmod +x /etc/profile.d/script.sh
Further we will make the environment variables permanent as by running:
1 source /etc/profile.d/script.sh
Again before starting Tomcat service, we will provide executable permissions to following files:
chmod +x $CATALINA_HOME/bin/startup.shchmod +x $CATALINA_HOME/bin/shutdown.shchmod +x $CATALINA_HOME/bin/catalina.sh
Now we need to start Tomcat service by using:
$CATALINA_HOME/bin/startup.sh[root@server1 ~]# $CATALINA_HOME/bin/startup.shUsing CATALINA_BASE: /opt/tomcatUsing CATALINA_HOME: /opt/tomcatUsing CATALINA_TMPDIR: /opt/tomcat/tempUsing JRE_HOME: /usrUsing CLASSPATH: /opt/tomcat/bin/bootstrap.jar:/opt/tomcat/bin/tomcat–juli.jarTomcat started.[root@server1 ~]#
It will start the Tomcat server, we can also check by using:
netstat –an | grep 8080[root@server1 ~]# netstat -an | grep 8080tcp6 0 0 :::8080 :::* LISTEN[root@server1 ~]#
In CentOS 7.0 we have different policy for the firewall-cmd, we will override it by using:
firewall–cmd —zone=public —add–port=8080/tcp —permanentfirewall–cmd —reload
Finally we need to create user accounts to secure and access admin/manager pages. Edit conf/tomcat-users.xml file in your editor and paste inside tags
1 vi $CATALINA_HOME/conf/tomcat–users.xml
< role rolename=“manager-gui”/>< role rolename=“manager-script”/>< role rolename=“manager-jmx”/>< role rolename=“manager-status”/>< role rolename=“admin-gui”/>< role rolename=“admin-script”/>< user username=“admin” password=“admin” roles=“manager-gui,manager-script,manager-jmx,manager-status,admin-gui,admin-script”/>
In above configuration I have used username=admin and password=admin, you can make the changes as per your choice. Then we need to stop/start the Tomcat service:
cd $CATALINA_HOME./bin/catalina.sh stop[root@server1 tomcat]# ./bin/catalina.sh stopUsing CATALINA_BASE: /opt/tomcatUsing CATALINA_HOME: /opt/tomcatUsing CATALINA_TMPDIR: /opt/tomcat/tempUsing JRE_HOME: /usrUsing CLASSPATH: /opt/tomcat/bin/bootstrap.jar:/opt/tomcat/bin/tomcat–juli.jar[root@server1 tomcat]#
Then start the service:
./bin/catalina.sh start[root@server1 tomcat]# ./bin/catalina.sh startUsing CATALINA_BASE: /opt/tomcatUsing CATALINA_HOME: /opt/tomcatUsing CATALINA_TMPDIR: /opt/tomcat/tempUsing JRE_HOME: /usrUsing CLASSPATH: /opt/tomcat/bin/bootstrap.jar:/opt/tomcat/bin/tomcat–juli.jarTomcat started.[root@server1 tomcat]#
Now access the page for login at http://192.68.0.100:8080
Your login password for the administrative right are as username=admin and password=admin. Click on Manager App.
Congratulations we have a working Tomcat Server installed in CentOS 7.0.