原创
同一台服务器部署多个tomcat对应多个项目
## 1 已有运行正常的tomcat_myblog
## 2 复制tomcat
```shell
cp -rf tomcat_myblog/ tomcat_newblog
```
## 3 设置Linux环境变量
## 1 vim /etc/profile,添加如下环境变量
```shell
########## first tomcat ###########
CATALINA_BASE=/root/tomcat_myblog
CATALINA_HOME=/root/tomcat_myblog
TOMCAT_HOME=/root/tomcat_myblog
export CATALINA_BASE CATALINA_HOME TOMCAT_HOME
########## first tomcat ###########
########## second tomcat ##########
CATALINA1_BASE=/root/tomcat_newblog
CATALINA1_HOME=/root/tomcat_newblog
TOMCAT1_HOME=/root/tomcat_newblog
export CATALINA1_BASE CATALINA1_HOME TOMCAT1_HOME
########## second tomcat ##########
```
### 注意:
① 若机器上只安装了一个Tomcat,这两个变量是不需要设置的。启动时会自动定位到Tomcat安装路径下;
② 若要部署第二个Tomcat,则第一个Tomcat不需要修改,也不需要将CATALINA_HOME和CATALINA_BASE添加到环境变量中,只修改第二个Tomcat相关内容即可。
## 4 使环境变量生效
```shell
source /etc/profile
```
## 5 修改tomcat的启动/停止文件catalina.sh
第一个 Tomcat 无需更改,可执行文件都在bin目录下。进入第二个 Tomcat 的 bin 目录修改 catalina.sh 文件。
### 注意:
在bin目录下,启动startup.sh和关闭shutdown.sh ,里面调用的是catalina.sh 的方法。
即将 catalina.sh中的
CATALINA_BASE 替换成 CATALINA1_BASE
CATALINA_HOME 替换成 CATALINA1_HOME
```shell
%s/CATALINA_BASE/CATALINA1_BASE/g
%s/CATALINA_HOME/CATALINA1_HOME/g
```
## 6 修改server.xml 中的端口号
将8005修改成8006
将8080修改成8081
可使用批量修改命令
```shell
%s/8005/8006/g
%s/8080/8081/g
```
### 注意:
①修改的端口号需要与idea中项目yml文件中设置的端口号一致
②此端口号必须添加到云服务器的安全组(阿里云)或防火墙组(腾讯云)中,否则无法访问,新手易错
### 7 分别启动两个tomcat,并观察日志(方便排查问题)
```shell
./bin/startup.sh & tail -f ./logs/catalina.out
```
输入命令:ps -ef |grep tomcat 查看进程。
```shell
[root@VM-8-8-opencloudos apache-tomcat-9.0.33]# ps -ef | grep tomcat
root 1555553 1 51 21:16 pts/0 00:00:40 /usr/bin/java -Djava.util.logging.config.file=/root/apache-tomcat-9.0.33/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -classpath /root/apache-tomcat-9.0.33/bin/bootstrap.jar:/root/apache-tomcat-9.0.33/bin/tomcat-juli.jar -Dcatalina.base=/root/apache-tomcat-9.0.33 -Dcatalina.home=/root/apache-tomcat-9.0.33 -Djava.io.tmpdir=/root/apache-tomcat-9.0.33/temp org.apache.catalina.startup.Bootstrap start
root 1555948 1555256 0 21:17 pts/0 00:00:00 grep --color=auto tomcat
```
tomcat