Linux中Tomcat 自动设置CATALINA_HOME方法

简介:

在服务器部署中,我们经常会出现“在一个服务器上运行多个tomcat服务”的情况。

使用如下方法设置,可以无限复制平移扩展Tomcat,无需修改其他任何环境变量配置。(当然在同一个机器上复制Tomcat 后,端口还是需要修改的 ^_^)

查看 Tomcat  bin 目录下的 catalina.sh 文件,会发现,它会判断 bin 目录下是否有 setenv.sh 文件,如果存在,会先执行。

按其中英文的解读说明的意思大概是:我们可以使用这个文件来动态设置运行时环境变量。

所以,我们在 bin 目录下,创建文件 setenv.sh 内容:

#!/bin/sh
#get tomca dir
CATALINA_HOME=$(cd `dirname $0`;cd ..;pwd)

并使用 chmod +x setenv.sh 赋予可执行权限。

脚本中的意思就是动态获取Tomcat 主目录给 CATALINA_HOME 赋值。


这样以来,我们平移扩展的多个Tomcat 都会自动读取自己的主目录来独立运行。



目录
相关文章
|
4天前
|
NoSQL Linux Redis
Linux Redis 服务设置开机自启动
【9月更文挑战第2天】在 Linux 系统中,可使用两种方法设置 Redis 开机自启动:一是通过创建 `redis.service` 文件并利用 systemd 进行管理,包括定义服务参数和启动脚本;二是编辑 `/etc/rc.local` 文件,在其中添加启动命令。推荐使用 systemd 方法,因为它更符合现代 Linux 系统的设计理念。设置完成后,可通过 `sudo systemctl status redis.service` 检查服务状态。
|
10天前
|
Ubuntu Linux 虚拟化
安装Windows Linux 子系统的方法:适用于windows 11 版本
本文提供了在Windows 11系统上安装Linux子系统(WSL)的详细步骤,包括启用子系统和虚拟化功能、从Microsoft Store安装Linux发行版、设置WSL默认版本、安装WSL2补丁,以及完成Ubuntu的首次安装设置。
43 2
|
13天前
|
应用服务中间件 Linux 网络安全
【Azure 应用服务】App Service for Linux 环境中为Tomcat页面修改默认的Azure 404页面
【Azure 应用服务】App Service for Linux 环境中为Tomcat页面修改默认的Azure 404页面
|
16天前
|
Ubuntu Linux
在Linux中,软件安装和卸载的常见方法?
在Linux中,软件安装和卸载的常见方法?
|
16天前
|
网络协议 安全 应用服务中间件
在Linux中,Tomcat8005、8009、8080三个端口的含义?
在Linux中,Tomcat8005、8009、8080三个端口的含义?
|
16天前
|
缓存 Java 应用服务中间件
在Linux中,Tomcat和Resin有什么区别,工作中怎么选择?
在Linux中,Tomcat和Resin有什么区别,工作中怎么选择?
|
6天前
|
Linux
linux内核执行fork时对写时复制的设置
linux内核执行fork时对写时复制的设置
|
9天前
|
Linux 开发工具 文件存储
Linux修改主机名的两种方法
Linux修改主机名的两种方法
14 0
|
14天前
|
缓存 前端开发 Java
【Azure 应用服务】App Service 使用Tomcat运行Java应用,如何设置前端网页缓存的相应参数呢(-Xms512m -Xmx1204m)?
【Azure 应用服务】App Service 使用Tomcat运行Java应用,如何设置前端网页缓存的相应参数呢(-Xms512m -Xmx1204m)?
|
15天前
|
Linux Perl
在Linux中,系统目前有许多正在运行的任务,在不重启机器的条件下,有什么方法可以把所有正在运行的进程移除呢?
在Linux中,系统目前有许多正在运行的任务,在不重启机器的条件下,有什么方法可以把所有正在运行的进程移除呢?
下一篇
DDNS