如何在 Ubuntu 上安装多个 Tomcat 实例?

tpu*_*nen 7 tomcat ubuntu

我需要在 Ubuntu 10.04 上运行两个 Tomcat 6 实例。我知道它应该可以很简单地通过以下方式实现:

  • 将 /var/lib/tomcat6 复制到 /var/lib/tomcat6-2
  • 修改 /var/lib/tomcat6-2/conf/server.xml 中的端口
  • 将 /etc/init.d/tomcat6 复制到 /etc/init.d/tomcat6-2
  • 修改/etc/init.d/tomcat6-2...

...但我的问题是我不确定我应该在 /etc/init.d/tomcat6-2 中修改什么。更改文件开头的 NAME 显然是不够的。

(我知道有 tomcat6-new-instance 但我不想为用户创建实例。)

adm*_*ech 2

我不得不这样做并发现最简单的解决方案就是这样

再看一遍,看看这是否是您想要的。

使用单个catalina_base和运行多个 tomcat catalina_home

这将使服务器管理变得容易,仅使用一个 tomcat 设置实例

下载 tomcat-6+ 并解压。修改下两个配置文件 conf

服务器.xml

将端口和访问日志以及集群实例名称替换为以下变量:

<Server port="${tomcat.server.port}1" shutdown="SHUTDOWN">...
<Connector port="${tomcat.server.port}2" protocol="HTTP/1.1"
Run Code Online (Sandbox Code Playgroud)

连接超时=“20000”重定向端口=“8443”/>...

catalina.属性

更改日志文件前缀,例如

1catalina.org.apache.juli.FileHandler.prefix = ${tomcat.server.port}.catalina
Run Code Online (Sandbox Code Playgroud)

在运行命令之前,您应该为每个实例设置 2 个环境变量,例如

set JAVA_OPTS=-Dtomcat.server.port=810
set CATALINA_TMPDIR=%cd%..work810
catalina run

set JAVA_OPTS=-Dtomcat.server.port=820
set CATALINA_TMPDIR=%cd%..work820
catalina run
Run Code Online (Sandbox Code Playgroud)