2

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

conf ログ サーバー webapps 作業

bin、lib、common ディレクトリはすべて $CATALINA_HOME にあります。

binディレクトリにsetenv.shファイルを追加する必要がありますが、すべてのカタリナベースで使用したくありません。これを行うには、setenv.sh ファイルを取得したい catalina_base に bin ディレクトリを追加することを考えています。bin ディレクトリには setenv.sh ファイルのみが含まれ、他には何も含まれません。それ以外はすべて $CATALINA_HOME/bin/ にあります (つまり、startup.sh、catalina.sh、shutdown.sh など)。

これを行うことによる副作用はありますか?Tomcat は起動時に $CATALINA_BASE/bin/ と $CATALINA_HOME/bin の両方を使用できますか?

4

1 に答える 1

5

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

その構成がある場合は、おそらく catalina.sh を実行する独自の起動スクリプトを持っているでしょう。オプション JAVA_HOME、CATALINA_HOME、CATALINA_BASE、およびおそらく CATALINA_PID を使用します。

したがって、setenv.sh で変更または追加する必要があるものは何でも、独自の起動スクリプトを変更するだけです。または、開始スクリプトの開始時に呼び出される setenv.sh を作成します。これを自分の bin ディレクトリに入れます。

Linuxだと思います(Windowsでも同様です)。したがって、いくつかのアプリケーションを作成できます。それらを APP1、APP2 と呼びましょう。両方があります: bin conf logs server webapps work. ディレクトリ構造は次のとおりです。

/apps/APP1
   置き場
      start.sh
      stop.sh
   conf
   ログ
   サーバ
   ウェブアプリ
   仕事
/apps/APP2
   置き場
      start.sh
      stop.sh
   conf
   ログ
   サーバ
   ウェブアプリ
   仕事
/opt/apache-tomcat-xxx
   すべての標準的な tomcat ファイル...
/opt/Java-1.6
   すべての標準 Java ファイル...

APP1 の start.sh では、JAVA_HOME、CATALINA_HOME、CATALINA_BASE、およびおそらく CATALINA_PID、CATALINA_OPTS を設定できます。

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 から stop に変更するだけです。次のステップは、変数の定義を何らかのファイル (config.ini など) に移動することです。次に、このファイルを start.sh と stop.sh でソースする必要があります。Windows では、エクスポートを設定に変更する必要があります。別のシェル (bash でない場合) では、指示に従う必要があります。

于 2010-11-24T12:30:52.040 に答える