Linux(CentOS7)下如何配置多个Tomcat容器
一、Linux版本

二、上传并解压apache-tomcat-7.0.90压缩包,然后复制粘贴出来多个tomcat
解压缩
tar -xzvf apache-tomcat-7.0.90.tar.gz
三、复制粘贴(我是在原tomcat名称后面直接追加-2、-3)
cp -R apache-tomcat-7.0.90/ apache-tomcat-7.0.90-2
cp -R apache-tomcat-7.0.90/ apache-tomcat-7.0.90-3
四、修改环境配置,添加TOMCAT_HOME等环境变量
vim /etc/profile
在/etc/profile文件后面追加如下内容
# tomcat
export TOMCAT_HOME=/usr/local/program/apache-tomcat-7.0.90
export CATALINA_HOME=$TOMCAT_HOME
export CATLINA_BASE=$TOMCAT_HOME
# tomcat2
export TOMCAT_HOME_2=/usr/local/program/apache-tomcat-7.0.90-2
export CATALINA_HOME_2=$TOMCAT_HOME_2
export CATLINA_BASE_2=$TOMCAT_HOME_2
# tomcat3
export TOMCAT_HOME_3=/usr/local/program/apache-tomcat-7.0.90-3
export CATALINA_HOME_3=$TOMCAT_HOME_3
export CATLINA_BASE_3=$TOMCAT_HOME_3
如图所示:

最后不要忘记使环境配置生效
source /etc/profile
五、针对每个tomcat,修改其启动时所要读取的TOMCAT_HOME等环境变量
1、修改apache-tomcat-7.0.90的catalina.sh,如下:
vim /usr/local/program/apache-tomcat-7.0.90/bin/catalina.sh
在文件开始处指定环境变量,如下所示
# tomcat配置
export TOMCAT_HOME=$TOMCAT_HOME
export CATALINA_HOME=$TOMCAT_HOME
export CATLINA_BASE=$TOMCAT_HOME
说明,其实第一个tomcat指定与否都无所谓,因为它默认会读取正确的系统环境变量,即$TOMCAT_HOME、$CATALINA_HOME和$CATLINA_BASE,但另外两个复制粘贴出来的tomcat就必须指定。

2、修改apache-tomcat-7.0.90-2的catalina.sh,如下:
vim /usr/local/program/apache-tomcat-7.0.90-2/bin/catalina.sh
在文件开始处指定环境变量,如下所示
# tomcat2配置
export TOMCAT_HOME=$TOMCAT_HOME_2
export CATALINA_HOME=$TOMCAT_HOME_2
export CATLINA_BASE=$TOMCAT_HOME_2

3、修改apache-tomcat-7.0.90-3的catalina.sh,如下:
vim /usr/local/program/apache-tomcat-7.0.90-3/bin/catalina.sh
在文件开始处指定环境变量,如下所示
# tomcat3配置
export TOMCAT_HOME=$TOMCAT_HOME_3
export CATALINA_HOME=$TOMCAT_HOME_3
export CATLINA_BASE=$TOMCAT_HOME_3

六、对另外两个tomcat,修改其三个端口,避免端口冲突导致启动失败
在server.xml中修改端口
vi /usr/local/program/apache-tomcat-7.0.90-2/conf/server.xml

在apache-tomcat-7.0.90-2中,我把8005端口修改成了28005,8080端口修改成了28080,8009修改成了28009,如下所示(当然也可以修改成其它端口)


在apache-tomcat-7.0.90-3中,我把8005端口修改成了38005,8080端口修改成了38080,8009修改成了38009,如下所示(当然也可以修改成其它端口)


七、分别启动三个tomcat
启动命令及截图如下所示
/usr/local/program/apache-tomcat-7.0.90/bin/startup.sh
/usr/local/program/apache-tomcat-7.0.90-2/bin/startup.sh
/usr/local/program/apache-tomcat-7.0.90-3/bin/startup.sh

八、验证启动成功
命令行先验证一下进程启动

然后在浏览器里面访问,截图如下:



以上截图说明三个Tomcat的配置成功
Linux(CentOS7)下如何配置多个Tomcat容器的更多相关文章
- ubuntu linux环境下安装配置jdk和tomcat
关于linux搭建服务器,ubuntu中jdk和tomcat的安装和配置 一.jdk的安装配置 1:去官网下载好自己需要的版本,注意,linux压缩文件通常以tar.gz结尾,别下载错了.本次我下载安 ...
- Linux centos7下安装配置redis及Redis desktop Manager工具连接注意事项
基本工具:VMware12.CentOS-7-x86_64-Everything-1611.iso.redis-desktop-manager-0.8.0.3841 废话不多说,首先,关于什么是Red ...
- Linux(CentOS7)下如何配置多个JDK环境变量
一.Linux版本 二.复制粘贴多个JDK出来,如下 cp -R jdk1.7.0_80/ jdk1.7.0_80-2 cp -R jdk1.7.0_80/ jdk1.7.0_80-3 三.配置多个J ...
- Linux(CentOS7)下配置多个tomcat
记录 Linux(CentOS7) 下配置多个 tomcat 的操作过程. 一.下载tomcat 前提:安装配置好jdk环境,未配置可参考Linux(CentOS7)下安装jdk1.8. 从 tomc ...
- Linux CentOs7 下安装 redis
Linux CentOs7 下安装 redis 请将以下命令放入linux命令行中运行 如果安装过程前没有安装GCC请先安装 命令如下 $ yum install gcc-c++ $ wget ht ...
- (转)LINUX CENTOS7下安装PYTHON
LINUX CENTOS7下安装PYTHON 原文:http://www.cnblogs.com/lclq/p/5620196.html Posted on 2016-06-27 14:58 南宫羽香 ...
- Linux CentOS7下安装Zookeeper-3.4.10服务(最新)
Linux CentOS7下安装Zookeeper-3.4.10服务(最新) 2017年10月27日 01:25:26 极速-蜗牛 阅读数:1933 版权声明:本文为博主原创文章,未经博主允许不得 ...
- Linux - centos7 下 MySQL(mariadb) 和 主从复制
目录 Linux - centos7 下 MySQL(mariadb) 和 主从复制 MySQL(mariadb) 安装MySQL(mariadb) 配置数据库的中文支持 在远程用 mysql客户端去 ...
- Linux(CentOS7)下安装jdk1.8
Linux(CentOS7) 下安装 jdk1.8 操作过程. 一.检查是否自带jdk rpm -qa|grep java 如果存在则用下面命令删除,xxx yyy zzz代表查询出来的自带jdk名称 ...
随机推荐
- 通过href链接实现从当前页面跳转到动态页的指定页面的实现方式
指定页的jsp的href设置 <a href="/lekg/check/shangchuan2.jsp?tabtype=2"><li><img src ...
- Java对象引用/JVM分级引用——强引用、软引用、弱引用、虚引用
无论是通过引用计数法判断对象的引用数量,还是通过可达性分析算法判断对象的引用链是否可达,判断对象是否存活都与“引用”有关, 相关资料:如何判断对象是否存活/死去 那么引用究竟是什么?让我们一起来看一下 ...
- Jdk1.8中的HashMap实现原理
HashMap概述 HashMap是基于哈希表的Map接口的非同步实现.此实现提供所有可选的映射操作,并允许使用null值和null键.此类不保证映射的顺序,特别是它不保证该顺序恒久不变. HashM ...
- Intellij IDEA 阅读源码的 4 个绝技,我必须分享给你!
前段时间分享了<阅读跟踪 Java 源码的几个小技巧>是基于 Eclipse 版本的,看大家的留言都是想要 IDEA 版本的源码阅读技巧. 所以,为了满足众多 IDEA 粉丝的要求,栈长我 ...
- 从壹开始前后端分离【 .NET Core2.0 +Vue2.0 】框架之十 || AOP面向切面编程浅解析:简单日志记录 + 服务切面缓存
代码已上传Github+Gitee,文末有地址 上回<从壹开始前后端分离[ .NET Core2.0 Api + Vue 2.0 + AOP + 分布式]框架之九 || 依赖注入IoC学习 + ...
- HandlerInterceptor里@Autowired对象为空的解决方法
That's because Spring isn't managing your PagePopulationInterceptor instance. You are creating it yo ...
- @vue-cli3安装element组件过程
在创建好的项目目录下 执行: vue add element 如图选择对应的选项 安装成功!KO!
- C#枚举的简单使用
枚举这个名词大家都听过,很多小伙伴也使用过, 那么枚举在开发中能做什么,使用它后能给程序代码带来什么改变,为什么用枚举. 各位看官且坐下,听我一一道来. 为什么使用枚举? 1.枚举能够使代码更加清晰, ...
- 使用.NetCore 控制台演示 熔断 降级(polly)
1.熔断降级的概念: 熔断:我这里有一根长度一米的钢铁,钢铁的熔点1000度(假设),现在我想用力把这根钢铁折弯,但是人的力有限达不到折弯的点,然后我使用火给钢铁加热,每隔一段时间我就会尝试一下是否能 ...
- DS控件库 DS标签的另类用法之折叠展开
某些场合下,可以通过动态设置DS标签的文本内容来输出不同的显示效果,以下是示例. 示例中的素材 示例资源文本 String1="<linkimg=E1><b>&l ...