質問

現時点では、次のディレクトリで構成されたいくつかのカタリナベースがあります。

confログサーバーWebApps作業

ビン、lib、および一般的なディレクトリはすべて$ catalina_homeにあります。

BinディレクトリにSetenv.shファイルを追加する必要がありますが、すべてのカタリナベースで使用したくありません。これを行うために、catalina_baseにsetenv.shファイルをピックアップしたいcatalina_baseにビン方向を追加することを考えています。 BINディレクトリには、setenv.shファイルのみが含まれていますが、他には何も含まれていません。他のすべてはまだ$ catalina_home/ bin/(すなわちstartup.sh catalina.sh shutdown.shなど)にあります

これを行う副作用はありますか?スタートアップ中にTomcatは$ catalina_base/bin/and $ catalina_home/binの両方を使用できますか?

役に立ちましたか?

解決

setenv.shでビンを提供する場合、私はそれがどのように動作するかをテストしていません。しかし、これは、1つのCatalina_homeから異なるインスタンスを実行している多くのTomcatアプリケーションを構成する私の方法です。

その構成がある場合は、おそらくCatalina.shを実行する独自のスタートアップスクリプトがあります。オプションJava_home、catalina_home、catalina_base、およびおそらくcatalina_pidを使用します。

したがって、変更したり、setenv.shを追加したりする必要があるものは何でも、独自のスタートアップスクリプトを変更するだけです。または、スタートスクリプトの始まりに呼び出されるsetenv.shを作成します。これを独自のBinディレクトリに入れてください。

Linuxだと思います(Windowsでは似ています)。したがって、いくつかのapplicaitonsを持つことができます。それらをapp1、app2と呼びましょう。両方持っています: bin conf logs server webapps work. 。ディレクトリ構造は次のとおりです。

/apps/APP1
   bin
      start.sh
      stop.sh
   conf
   logs
   server
   webapps
   work
/apps/APP2
   bin
      start.sh
      stop.sh
   conf
   logs
   server
   webapps
   work
/opt/apache-tomcat-xxx
   all the standard tomcat files...
/opt/java-1.6
   all the standard java files...

app1のstart.shでは、java_home、catalina_home、catalina_base、およびおそらくcatalina_pid、catalina_optsを設定できます。

export JAVA_HOME=/opt/java-1.6
export CATALINA_HOME=/opt/apache-tomcat-xxx
export CATALINA_BASE=/apps/APP1
export CATALINA_PID=${CATALINA_BASE}/temp/app1.pid.file
export CATALINA_OPTS=-Dmy.fancy.variable=hello

${CATALINA_HOME}/bin/catalina.sh start

停止はほぼ同じです。停止の開始を変更するだけです。次のステップは、変数定義を何らかのファイルに移動することです。config.iniとしましょう。このファイルをstart.shおよびstop.shでも調達する必要があります。 Windowsでは、エクスポートをセットに変更する必要があります。異なるシェル(バッシュではない場合)では、指示に従う必要があります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top