Advanced Configuration - Multiple Tomcat 5.5 Instances on Linux
Create account tomuser as in [1] with .bash_profile following bellow.
Export new environment variable CATALINA_BASE pointing for example to ~tomuser.
# su - tomuser
$pwd
/home/tomuser
$cat .bash_profile
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
export CATALINA_BASE=~tomuser
export CATALINA_HOME=/home/tomcat/apache-tomcat-5.5.16
export JAVA_HOME=/home/tomcat/jdk1.5.0_06
export ANT_HOME=/home/tomcat/apache-ant-1.6.5
PATH=$JAVA_HOME/bin:$ANT_HOME/bin:$PATH
export PATH
export CLASSPATH=.:..:../..:$CATALINA_HOME/common/lib/servlet-api.jar:$CATALINA_HOME/common/lib/jsp-api.jar:
$CATALINA_HOME/common/lib/naming-factory-dbcp.jar
export DISPLAY=:0.0
unset USERNAME
Then:-
$cp -R $CATALINA_HOME/conf .
$cp -R $CATALINA_HOME/webapps .
$cp -R $CATALINA_HOME/shared .
$cp -R $CATALINA_HOME/work .
$cp -R $CATALINA_HOME/temp .
$cp -R $CATALINA_HOME/logs .
$cd /home/tomuser/conf/Catalina/localhost
Modify 3 files admin.xml,host-manager.xml,manager.xml.
Context should contain new value for docBase.
In particular manager.xml should look like:-
<Context docBase="/home/tomuser/server/webapps/manager"
privileged="true" antiResourceLocking="false" antiJARLocking="false">
<!-- Link to the user database we will get roles from -->
<ResourceLink name="users" global="UserDatabase"
type="org.apache.catalina.UserDatabase"/>
</Context>
Next:-
$cp -R $CATALINA_HOME/server .
$cd conf
Modify server.xml. Three ports values should be changed:-
<Server port="8015" shutdown="SHUTDOWN">
.......
<!-- Define a non-SSL HTTP/1.1 Connector on port 8080 -->
<Connector port="8090" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true" />
.......
<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="8019"
enableLookups="false" redirectPort="8443" protocol="AJP/1.3" />
To start new TomCat instance:-
$ $CATALINA_HOME/bin/startup.sh -Dcatalina.base=$CATALINA_BASE
Screenshot of $CATALINA_BASE/logs/catalina.out:-
Screenshot of "admin" report:-
To perform deployment with "ant" to new instance of TomCat :-
$ cd apache-tomcat-5.5.16-deployer
Make one change to build.xml,replacing old port value for TomCat by new one.
<!-- Configure properties to access the Manager application -->
<property name="url" value="http://localhost:8090/manager"/>
<property name="username" value="tomcat"/>
<property name="password" value="tomcat"/>\>
References
1.http://bderzhavets.blogspot.com/2006/07/installation-tomcat5.html