サーバを準備して利用すると便利なアプリケーションには様々な種類がありますが、その中でも特に便利なのはWikiやチケットシステムといった、「思いついたことをまとめておく」ためのシステムです。今回はWikiとチケットシステムをサーバ上に構築し、複数のマシンから使うレシピをお届けします。
howmを使う
第25回で紹介した通り、Emacs特有のキーバインドによる取っつきにくさこそあるものの、もっともお手軽に利用できるWiki類似システムの一つです[1]。
複数のマシンを利用した環境でhowmを利用する場合、「どのマシンでhowmにメモを取ったのかが分からなくなり、データが行方不明になる」ことが問題になります。これまでに紹介してきたレシピを組み合わせて、複数台のマシンからうまく使う方法を考えてみましょう。
sshを使う
一つの方法は、第21回で紹介したようにSSHを使うことです。ここではすでにサーバマシンにopenssh-serverパッケージが導入されていることを仮定しています。もしインストールされていない場合は、第21回のレシピの通りにインストールしてください。
Emacsはターミナル上でも起動できますから、[アプリケーション]→[アクセサリ]→[端末]を開いて次のように操作し、サーバマシンにログインすれば利用することができます。ここではサーバマシンが192.168.200.10に存在することにしていますが、お使いの環境に合わせて読み替えてください。
ターミナル上でEmacsを使うことになりますので、次のような画面になるはずです。
ターミナル経由では使いにくい、という場合、以前のレシピで紹介したようにX転送を利用しましょう。
この操作で通常のEmacsの画面を手元に引き寄せることができますので、(図2)のように、手元でEmacsを起動したのと全く同じような画面になります。
いずれの場合も、実際に利用されるファイルはサーバにあるものですから、「データがどこにあるか分からない」という問題を避けることができます。
NFSを使う
前回のレシピで紹介したNFSサーバを利用している環境の場合、より簡単な利用方法があります。
データのあるマシンが分からなくなるのが問題なのですから、howmのデータ領域をNFS上に置いてしまえば、まったく意識せずに利用することができるでしょう。標準ではhowmのディレクトリは~/howm以下にセットされますので、前回紹介したようにNFS領域を/nfs/192.168.200.20以下に準備した上で、次のようにシンボリックリンクを張ります。
この状態でローカルのEmacsを起動し、howmを利用すれば、サーバマシン上のデータをそのまま閲覧・更新できるようになります。
Tracを使う
howmは使い始めると非常に便利なツールなのですが、やはり手慣れたブラウザを用いてWikiにアクセスしたい、という方も多いでしょう。今回はgihyo.jp内でもおなじみの、TracをUbuntu環境で構築してみましょう。
Tracはバグ管理(BTS)のためのチケットシステム[2]やWikiを兼ねた、ソフトウェア開発者が利用するのに適したツールです。「開発者向け」というと何となく身構えてしまうかもしれませんが、実際に使ってみると非常に簡単なツールです。
Tracのインストール
TracはHTTPサーバを起動させ、その上で動作させるサーバアプリケーションです。利用するにはいくつかの方法があります。ひとつは「tracd」という、Tracに内蔵されたHTTPサーバを用いて利用する方法です。これは設定が簡単な反面、自動起動させようとすると少々面倒です。
ここでは10月末にリリースされるUbuntu 8.10上でApache2とmod_pythonを用い、Tracを利用する方法を説明します。Tracの利用には、Tracパッケージの他に、いくつかのパッケージが必要になります。以下のようにインストールしてください。
Tracパッケージのインストールが終了したら、まずデータ領域の作成を行います。次のように操作し、Subversionのデータ領域と、Tracを展開する領域を作成します。ここではデータ領域の名前に「gihyo」というものを使っていますが、必要に応じて読み替えてください。
/etc/apache2/sites-available/tracというファイルに、次の記述を行います。ServerNameでは「trac.example.com」という名前を使っていますが、お使いのマシン名に合わせてください。
サイトの有効化を行います。
Tracの初期設定を行います。ここではプロジェクト名を「gihyo.jp Demo」としていますが、どんな名前でも構いません。
Trac環境をApacheから利用できるように変更します。
この状態でFirefoxでhttp://localhost/trac を開くと、図3のような画面が、そしてリンクをたどると図4のような画面が表示されるようになっているはずです。ただし、このままではチケットを作成したり、Wikiページとして利用することはできません。
ちょっとした利用だけであれば、以下のようにguest(Anonymous)ユーザにチケットやWikiの作成・編集権限を与えてしまう、という手もあります。ただし、この方法は誰でも書き込めてしまいますし、チケットの所有者が「Anonymous」となってしまい、あまりきれいではありません。
そこで、ここではApache2でhttpsを利用できる状態にした上で、さらに個別のユーザ認証が行えるようにしてみましょう。SSLを利用するには証明書が必要です。次のコマンドを用いることで、いわゆる「おれおれ証明書」を作成し、Webサーバに導入することができます。
さらに、証明書のフィンガープリント情報を得るため、次のコマンドを入力します。
この状態でhttps://localhost/tracへアクセスすると、図5のような警告が表示されます。
ここでは証明書のフィンガープリントを用いてサイトが正しいことを確認できますので「例外を追加」を押して「証明書の取得」を行います。
証明書のフィンガープリントを確認できますので、先ほど出力したものと完全に一致するかを確認し、例外を承認してください。これにより、以降はブラウザがフィンガープリントの一致を確認してくれますので、問題なくアクセスできるようになります。フィンガープリントの一致確認は、Tracを利用するマシンごと・ユーザごとに行う必要があります。
ここまでの準備ができたら、Tracにアクセスできるユーザを作成します。ここではfyoshidaというユーザを作成していますが、適宜読み替えてください。
さらに、/etc/apache2/sites-available/tracの中身を、以下のものに変更します。
変更を反映するためにApache2をリロードします。
この状態でhttps://localhost/tracへアクセスすると、ユーザ認証が要求されるようになります。設定したユーザ名とパスワードでログインすることで、チケットの作成やWikiページの作成・編集が行えるようになります。