Ubuntu12.04 VPSサーバ構築手順:Tomcat実行環境(Tomcat7)インストール

前回の内容に倣い、Tomcat7を導入する。

関連するパッケージ内容を確認。

$ sudo apt-cache search tomcat7
libtomcat7-java - Servlet and JSP engine -- core libraries
tomcat7 - Servlet and JSP engine
tomcat7-admin - Servlet and JSP engine -- admin web applications
tomcat7-common - Servlet and JSP engine -- common files
tomcat7-docs - Servlet and JSP engine -- documentation
tomcat7-examples - Servlet and JSP engine -- example web applications
tomcat7-user - Servlet and JSP engine -- tools to create user instances
$

上記で引っかかったパッケージを一括でインストール。

$ sudo apt-get install -y libtomcat7-java tomcat7 tomcat7-admin tomcat7-common tomcat7-docs tomcat7-examples tomcat7-user
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています                
状態情報を読み取っています... 完了
以下のパッケージが自動でインストールされましたが、もう必要とされていません:
  junit4 antlr libmockobjects-java libcommons-cli-java libcommons-logging-java libxstream-java libbsf-java libapache-pom-java ivy libantlr-java libservlet2.5-java libxpp3-java libasm3-java
  libregexp-java libcommons-lang-java libhamcrest-java libcommons-parent-java libjline-java
これらを削除するには 'apt-get autoremove' を利用してください。
以下の特別パッケージがインストールされます:
  authbind libcommons-collections3-java libcommons-dbcp-java libcommons-pool-java libecj-java libservlet3.0-java
提案パッケージ:
  libcommons-collections3-java-doc libgeronimo-jta-1.0.1b-spec-java ecj ant libecj-java-gcj libtcnative-1
以下のパッケージが新たにインストールされます:
  authbind libcommons-collections3-java libcommons-dbcp-java libcommons-pool-java libecj-java libservlet3.0-java libtomcat7-java tomcat7 tomcat7-admin tomcat7-common tomcat7-docs
  tomcat7-examples tomcat7-user
アップグレード: 0 個、新規インストール: 13 個、削除: 0 個、保留: 26 個。
6,746 kB のアーカイブを取得する必要があります。
この操作後に追加で 12.3 MB のディスク容量が消費されます。
取得:1 http://jp.archive.ubuntu.com/ubuntu/ precise/main libcommons-collections3-java all 3.2.1-5 [603 kB]
取得:2 http://jp.archive.ubuntu.com/ubuntu/ precise/main libcommons-pool-java all 1.5.6-1 [94.0 kB]
取得:3 http://jp.archive.ubuntu.com/ubuntu/ precise/main libcommons-dbcp-java all 1.4-1ubuntu1 [152 kB]
取得:4 http://jp.archive.ubuntu.com/ubuntu/ precise/main libecj-java all 3.5.1-3 [1,231 kB]
取得:5 http://jp.archive.ubuntu.com/ubuntu/ precise-updates/universe libservlet3.0-java all 7.0.26-1ubuntu1.1 [291 kB]
取得:6 http://jp.archive.ubuntu.com/ubuntu/ precise-updates/universe libtomcat7-java all 7.0.26-1ubuntu1.1 [3,417 kB]
取得:7 http://jp.archive.ubuntu.com/ubuntu/ precise-updates/universe tomcat7-common all 7.0.26-1ubuntu1.1 [49.1 kB]
取得:8 http://jp.archive.ubuntu.com/ubuntu/ precise-updates/universe tomcat7 all 7.0.26-1ubuntu1.1 [37.3 kB]
取得:9 http://jp.archive.ubuntu.com/ubuntu/ precise-updates/universe tomcat7-admin all 7.0.26-1ubuntu1.1 [40.9 kB]
取得:10 http://jp.archive.ubuntu.com/ubuntu/ precise-updates/universe tomcat7-docs all 7.0.26-1ubuntu1.1 [619 kB]
取得:11 http://jp.archive.ubuntu.com/ubuntu/ precise-updates/universe tomcat7-examples all 7.0.26-1ubuntu1.1 [168 kB]
取得:12 http://jp.archive.ubuntu.com/ubuntu/ precise-updates/universe tomcat7-user all 7.0.26-1ubuntu1.1 [26.3 kB]
取得:13 http://jp.archive.ubuntu.com/ubuntu/ precise/main authbind amd64 1.2.0build3 [17.8 kB]
6,746 kB を 2秒 で取得しました (2,735 kB/s)
パッケージを事前設定しています ...
Selecting previously unselected package libcommons-collections3-java.
(データベースを読み込んでいます ... 現在 149696 個のファイルとディレクトリがインストールされています。)
(.../libcommons-collections3-java_3.2.1-5_all.deb から) libcommons-collections3-java を展開しています...
Selecting previously unselected package libcommons-pool-java.
(.../libcommons-pool-java_1.5.6-1_all.deb から) libcommons-pool-java を展開しています...
Selecting previously unselected package libcommons-dbcp-java.
(.../libcommons-dbcp-java_1.4-1ubuntu1_all.deb から) libcommons-dbcp-java を展開しています...
Selecting previously unselected package libecj-java.
(.../libecj-java_3.5.1-3_all.deb から) libecj-java を展開しています...
Selecting previously unselected package libservlet3.0-java.
(.../libservlet3.0-java_7.0.26-1ubuntu1.1_all.deb から) libservlet3.0-java を展開しています...
Selecting previously unselected package libtomcat7-java.
(.../libtomcat7-java_7.0.26-1ubuntu1.1_all.deb から) libtomcat7-java を展開しています...
Selecting previously unselected package tomcat7-common.
(.../tomcat7-common_7.0.26-1ubuntu1.1_all.deb から) tomcat7-common を展開しています...
Selecting previously unselected package tomcat7.
(.../tomcat7_7.0.26-1ubuntu1.1_all.deb から) tomcat7 を展開しています...
Selecting previously unselected package tomcat7-admin.
(.../tomcat7-admin_7.0.26-1ubuntu1.1_all.deb から) tomcat7-admin を展開しています...
Selecting previously unselected package tomcat7-docs.
(.../tomcat7-docs_7.0.26-1ubuntu1.1_all.deb から) tomcat7-docs を展開しています...
Selecting previously unselected package tomcat7-examples.
(.../tomcat7-examples_7.0.26-1ubuntu1.1_all.deb から) tomcat7-examples を展開しています...
Selecting previously unselected package tomcat7-user.
(.../tomcat7-user_7.0.26-1ubuntu1.1_all.deb から) tomcat7-user を展開しています...
Selecting previously unselected package authbind.
(.../authbind_1.2.0build3_amd64.deb から) authbind を展開しています...
ureadahead のトリガを処理しています ...
doc-base のトリガを処理しています ...
Processing 1 added doc-base file...
Registering documents with scrollkeeper...
man-db のトリガを処理しています ...
libcommons-collections3-java (3.2.1-5) を設定しています ...
libcommons-pool-java (1.5.6-1) を設定しています ...
libcommons-dbcp-java (1.4-1ubuntu1) を設定しています ...
libecj-java (3.5.1-3) を設定しています ...
libservlet3.0-java (7.0.26-1ubuntu1.1) を設定しています ...
libtomcat7-java (7.0.26-1ubuntu1.1) を設定しています ...
tomcat7-common (7.0.26-1ubuntu1.1) を設定しています ...
tomcat7 (7.0.26-1ubuntu1.1) を設定しています ...

Creating config file /etc/default/tomcat7 with new version
システムユーザ `tomcat7' (UID 116) を追加しています...
新しいユーザ `tomcat7' (UID 116) をグループ `tomcat7' に追加しています...
ホームディレクトリ `/usr/share/tomcat7' は作成しませんでした.
 * no JDK found - please set JAVA_HOME
invoke-rc.d: initscript tomcat7, action "start" failed.
tomcat7-admin (7.0.26-1ubuntu1.1) を設定しています ...
tomcat7-docs (7.0.26-1ubuntu1.1) を設定しています ...
tomcat7-examples (7.0.26-1ubuntu1.1) を設定しています ...
tomcat7-user (7.0.26-1ubuntu1.1) を設定しています ...
authbind (1.2.0build3) を設定しています ...
$ 

起動・停止の確認。...と思いきや、起動時に『JAVA_HOME』セットしてね、と怒られる。環境変数は設定済みなのに。

$ sudo /etc/init.d/tomcat7 start
 * no JDK found - please set JAVA_HOME
$ echo $JAVA_HOME
/usr/lib/jvm/java-7-oracle
$

こちらのエントリによると、別途設定追記が必要なようだ。という訳で追記。他の設定値に関してはひとまず現時点ではそのままとする。時が来たら言及。

$ sudo vi /etc/default/tomcat7
------------------------
# The home directory of the Java development kit (JDK). You need at least
# JDK version 1.5. If JAVA_HOME is not set, some common directories for
# OpenJDK, the Sun JDK, and various J2SE 1.5 versions are tried.
#JAVA_HOME=/usr/lib/jvm/openjdk-6-jdk
JAVA_HOME=/usr/lib/jvm/java-7-oracle  【←追加】

起動&停止&再起動を確認。

$ sudo /etc/init.d/tomcat7 start
 * Starting Tomcat servlet engine tomcat7 
$ sudo /etc/init.d/tomcat7 stop
 * Stopping Tomcat servlet engine tomcat7 
$ sudo /etc/init.d/tomcat7 restart
 * Stopping Tomcat servlet engine tomcat7                                                                                                                                                  [ OK ] 
 * Starting Tomcat servlet engine tomcat7 

ファイアウォール設定、管理者ユーザの追加等は前回エントリに倣う形で設定。(注意:managerロールに該当するアクセス制御の部分がtomcat7からは変わっているそうです。)

<tomcat-users>
  <role rolename="manager-gui" />
  <user username="(username)" password="(password)" roles="manager-gui,admin-gui" />
</tomcat-users>