LeopardでTomcatを自動起動させる

無事Tomcatのインストールは終わったのですが、Macを起動させて自分のデスクトップが表示される時点で、自動的にTomcatを起動させたいという欲望に駆られています。rep2 機能拡張パックとW2Chというエントリにも書きましたが、昼休みにP905iから自宅Macのrep2を利用しているため、今度は同じように昼休みにP905iから自宅MacのW2Ch 中間鯖を利用してみたいのです。

現在は、平日の正午にMacを自動起動させるよう、Mac OS X 10.5.1 Leopardのシステム環境設定「省エネルギー設定」から「スケジュール」という項目で設定しています。Web 共有をONの状態でシステム終了しておけば、自動起動してもWeb 共有はONが保たれ、Apacheが利用できています。さらに、Tomcatも自動起動してくれないとW2Ch 中間鯖が使えません。Webで検索したら、Tomcatを自動起させるの記事はたくさん見つかったのですが、私のような初心者レベルにはスクリプトの書き方や設定の仕方がイマイチよくわからず、挫折してしまいました。でも、ここで引き下がるわけにはいかないので、システムの仕組みがよくわからない初心者でも、システムに手を施すことなく、安全にTomcatを自動起動させる方法を考えてみました。

システム環境設定の「アカウント」で「ログイン項目」を利用すれば、うまくいくんじゃないかと・・・。あとは、Tomcatのバージョンを切り替えてもいちいちログイン項目で設定し直さなくていいように、「/usr/local/tomcat/Current/bin/startup.sh」を呼ぶスクリプトというかアプリをつくればいいのですが、AppleScriptは知識が追いつかず失敗。次いで、さらに知識が乏しくてもなんとかなりそうなAutomatorを使ってみたところ、あっさり成功! というわけで、Automatorを使って、Tomcatを自動起動させるアプリを作ってみましょう。

アプリケーションフォルダに入っている、Automatorを起動します。新規ワークフローの開始点をどれにするか聞いてくるので、「カスタム」を選んで選択ボタンをクリックします。すると、ワークフローの画面が開きます。

左上の方にある虫眼鏡のマークが付いた検索窓に、「シェル」と入力すると自動的に絞り込まれ、「シェルスクリプトを実行」というのがリストアップされます。

この「シェルスクリプトを実行」という行を右側のグレーの広い部分にDrag and Dropして下さい。

シェルのポップアップメニュー部分が「/bin/bash」になっているので、「/bin/sh」を選びます。そして、すぐ下の白いテキストボックス内に、「/usr/local/tomcat/Current/bin/startup.sh」と記入します。

現在Tomcatが起動していないことを確認(http://localhost:8080/)し、一番右上の黒い右三角ボタンの「実行」をクリックします。すがすがしい音ともに、緑に白いレ点のマークが表示されれば、ワークフローがきちんと実行して完了したことになります。

再度、Tomcatを確認(http://localhost:8080/)してみて下さい。きちんとTomcatは起動しましたよね?

あとは、このワークフローをアプリとして保存します。Automatorの「ファイル」メニューから「別名で保存…」を選ぶと保存先のダイアログが出てくるので、フォーマットが「ワークフロー」となっているので「アプリケーション」に選び直してから、自分のHomeディレクトリに「Tomcat起動」などと名前を付けて保存します。あとは、この「Tomcat起動」アプリをログイン項目に追加すればOKです。

ついでに、「Tomcat終了」アプリもつくっておくといいでしょう。先と同様にテキストボックス内に「/usr/local/tomcat/Current/bin/shutdown.sh」と入れて、実行が確認できたらアプリケーションで保存するだけです。ダブルクリックでTomcatを終了できるようになります。

LeopardにTomcatをインストール

Mac OS X 10.5.1 LeopardにTomcatというものをインストールしないとW2Chの中間鯖がMac上で立てられないというのがきっかけで、早速Tomcatやらをインストールした備忘録です。Tomcatがなんなのかすら、実際にはよくわかってなくても、インストールは簡単なのでご安心を!

今回のインストールにあたり、CreativeStyleのMac OS X(Leopard)にTomcatをインストールを参考にさせていただきました。LeopardでTomcatをインストールされた記事が少なく、大変貴重な情報をありがとうございました。

まず、必要なものから(2008.01.05現在)。
・Mac OS X Leopard 10.5.1が動いているMacintosh
Apache Tomcat

最新安定版(!?)のApache Tomcat 5.5.25をダウンロードします。Binary DistributionsのCoreから、.zipもしくは.tar.gzをクリックすればOKです。ここでは、ファイルサイズの小さい「apache-tomcat-5.5.25.tar.gz」を取ってきてインストールしたいと思います。わかりやすいように、ダウンロードしてきた「apache-tomcat-5.5.25.tar.gz」をデスクトップに移動させます。Finderの「移動」メニューから「フォルダへ移動…」を選び、出てきたダイアログに下記のように入力して下さい。コピペでも大丈夫です。

/usr/local

「local」というフォルダが開かれ、いくつかフォルダが並んでいるかと思います。ここにTomcatをインストールするためのフォルダを作ります。ユーティリティフォルダ(/Applications/Utilities)にあるターミナルを起動し、下記のように入力してreturnキーを押します。この時、行頭の$と半角スペースは入力しないで下さい。

$ sudo mkdir /usr/local/tomcat

「Password:」と聞いてくるので、システム管理者のパスワード(Leopardインストール時に設定したパスワード)を入力してreturnキーを押します。すると、「local」フォルダの中に「tomcat」フォルダが作成できたのがわかると思います。

Finder上の「tomcat」フォルダをダブルクリックして中に移動します。このフォルダにダウンロードしてきた「apache-tomcat-5.5.25.tar.gz」をコピーします。ターミナル上で「sudo cp 」まで入力したら、デスクトップ上の「apache-tomcat-5.5.25.tar.gz」をターミナルの画面へDrag and Dropするとパスが自動的に入力されます(入力ミスが防げるし、長いパスの時は便利です)。続けて、「/usr/local/tomcat」と入力すると、下記のようになると思います。またsudoから/tomcatまで改行なしの1行となります(一気にコピペで大丈夫です)。

$ sudo cp /Users/ユーザー名/Desktop/apache-tomcat-5.5.25.tar.gz /usr/local/tomcat

「Password:」と聞いてきたら入力します(さっさと進めれば、聞いてこないときもあります。以後、「sudo」で始まるコマンドを実行したときに「Password:」と聞いてきたら、その都度入力して下さい)。すると、「tomcat」フォルダの中に「apache-tomcat-5.5.25.tar.gz」がコピーされたのがFinder上から確認できると思います。ターミナルで入力するパスを短くするため、「tomcat」ディレクトリに移動します。

$ cd /usr/local/tomcat

「tomcat」フォルダの「apache-tomcat-5.5.25.tar.gz」を展開させます。

$ sudo tar zxvf apache-tomcat-5.5.25.tar.gz

ターミナルで目にもとまらぬ速さでファイルが展開されているのがわかります。展開が完了したら、Finder上でも「apache-tomcat-5.5.25」というフォルダができているのが確認できると思います。今後新しいバージョンや複数のバージョンのTomcatをインストールした際に、簡単に切り替えたりと、管理がしやすくなるように「Current」というシンボリックリンクを作成し、リンク先を「apache-tomcat-5.5.25」に設定します。

$ sudo ln -s /usr/local/tomcat/apache-tomcat-5.5.25 /usr/local/tomcat/Current

Finder上で「tomcat」フォルダの中に「Current」というエイリアスフォルダのようなアイコンが増えたと思います。これがシンボリックリンクです。今後、tomcatを呼び出すときは必ず「/usr/local/tomcat/Current」のように「Current」を介するようにします。

一般ユーザからでも簡単に使えるようにするため、「/usr/local/tomcat/」内のディレクトリの所有者権限を変更します。

$ sudo chown -R ユーザー名:staff /usr/local/tomcat/apache-tomcat-5.5.25
$ sudo chown -R ユーザー名:staff /usr/local/tomcat/Current

Tomcatを起動する際に必要な環境変数「JAVA_HOME」を設定します。環境変数を有効にするためには、ターミナルを一度終了させる必要があります。ターミナルを終了して、再び立ち上げてから下記コマンドを入力します。

$ echo export JAVA_HOME=/Library/Java/Home >> .bash_profile

ここまでできれば、インストールは完了です。早速Tomcatを起動してみましょう。

$ /usr/local/tomcat/Current/bin/startup.sh

Safari等のブラウザで以下のURLにアクセスし、猫がこっちを向いているページが表示されればインストール成功です。

http://localhost:8080/

Tomcatを終了させるには次のコマンドを入力します。

$ /usr/local/tomcat/Current/bin/shutdown.sh