オリジナル: Tomcat

必要条件

Tomcat 5.0以上

インストール

TomcatにHudsonをインストールするには、hudson.war$TOMCAT_HOME/webapps にコピーして、http://yourhost/hudson にアクセスするだけです。

HudsonのためだけにTomcatを動かしているなら、$TOMCAT_HOME/webapps からすべてを削除して、hudson.warROOT.war として置きます。Tomcatは展開して ROOT ディレクトリを作るので、余計なパスを取り除いた http://yourhost/ としてアクセスできます。この方法はバーチャルホストを使用していても正常に動作しますし、複数のアプリケーションを1つのインスタンスで動かせることもできます。また、余計なパスをつけることなく http://hudson.acme.org/ のようなURLでHudsonにアクセスできます。バーチャルホストの設定の詳細については、Tomcatのドキュメントを参照してください。

アップグレード

hudson.war を新しいバージョンで上書きするだけです。Tomcatは自動的にアプリケーションを再デプロイします。

HUDSON_HOMEの設定

Tomcatを起動する前に、CATALINA_OPTS を次のように設定します。この方法は、ヒープサイズを増やすJVMの設定を指定するのにも使用できます。

$ export CATALINA_OPTS="-DHUDSON_HOME=/path/to/hudson_home -Xmx512m"
$ catalina.sh start

もしくは、何らかの理由で失敗するなら、環境変数を使用できます。

$ export HUDSON_HOME=/path/to/hudson_home
$ catalina.sh start

TomcatでのHudsonのセキュリティ

Tomcatはデフォルトで $TOMCAT_HOME/conf/tomcat-users.xml というXMLファイルにユーザーデータベースを保存します。次の行をこのファイルに追加すると、管理者ユーザーを作成できます。

<role rolename="admin"/>
<user username="hudson-admin" password="secret" roles="admin"/>

i18n

Tomcatのあるバージョン(5.0.28など)はURLのデコードにiso-8859-1を使用しますが、あきらかにRFCに違反しています。この問題を解決するには、以下のように、 $TOMCAT_HOME/conf/server.xml のコネクターの定義に URIEncoding 属性を追加します。

<Connector port="8080" URIEncoding="UTF-8"/>

RequestDumperValve があると問題が発生する というレポートもあります。

関連文書

  1. Confluenceでのこの問題についてのドキュメント (http://confluence.atlassian.com/display/DOC/Configuring+Tomcat's+URI+encoding)
  2. John O'Conner氏のブログ。 (Elliotte氏のコメントを参照してください)

関連する課題

Tomcatに関連する 課題リスト

XAMPPのTomcat

もしJava 1.5以上でXAMPPのTomcatを使用するなら、common\libディレクトリから次のjarファイルを削除する必要があります。そうしなければ、changelog.xmlジェネレータがFileNotFoundExceptionが発生します。

xalan.jar
xercesImpl.jar
xercesSamples.jar

UbuntuのTomcat

Ubuntuでapt-get経由でTomcatを取得したなら、Hudsonはセキュリティ上の問題を示すエラーを表示します。これは、UbuntuのTomcatがデフォルトでセキュリティマネージャーが有効になっているためです。 /etc/default/tomcat5 (バージョン番号はインストールしたTomcatによります) を変更することで無効にできます。詳しくは JENKINS-719 を参照してください。