spkie log

主にPythonを使って医用画像処理をしている研究者の備忘録

ubuntuにTracをインストール&プロジェクトの立ち上げ

どうもこんにちは。


私は今アメリカでのボスと研究における解析やデータの管理をラクにするためのソフトウェアを開発しています。
その開発のマネジメントのためにTracを導入して使っているのですが、
別のプロジェクトでTracを使いたいとボスからの要請がありました。


しかしいざインストールと思ってやってみるとかなりやり方を忘れている。。。
というわけで備忘録を残しておこうかと思います。


今回インストールをする環境はUbuntu 13.04です。
インストールにあたって以下のHPを参考にさせて頂きました。

TracModWSGI – The Trac Project(英語)

Trac 1.0インストール途中までのメモ書き - IT系メモ

さくらVPSにETロボコン開発環境を構築する(Ubuntuインストール〜Trac構築) - 平常心是道


作業手順は、

  1. 必要なソフト及びTracのインストール
  2. Tracの設定
  3. Apacheの設定

という流れでやります。

必要なソフト及びTracのインストール

まずはsetuptoolsのインストール。

% sudo apt-get install python-setuptools
% sudo apt-get install apache2
% sudo apt-get install libapache2-mod-wsgi


Tracのインストール。

% sudo easy_install Trac


久々にubuntu触っているけど、やはりapt-getやeasy_installでのインストールは非常にラクだ(笑)

Tracの設定

プロジェクトを新規作成。

% sudo mkdir /var/www/trac
% sudo trac-admin /var/www/trac/hogehoge initenv


ちなみにここでのプロジェクト名やディレクトリはあくまで例なので、環境や好みにあわせて変えてください。
trac-adminを実行するといろいろなメッセージが出て、途中で以下の項目の入力を求められます。

Project Name [My Project]:
Database connection string [sqlite:db/trac.db]:


ここではProject Nameはプロジェクト名、Database connectionはデフォルトのSQLiteを使うため、そのまま何も入力せずエンターキーを押します。

Project environment for 'hogehoge' created.

You may now configure the environment by editing the file:

  /var/www/trac/hogehoge/conf/trac.ini

If you'd like to take this new project environment for a test drive,
try running the Trac standalone web server `tracd`:

  tracd --port 8000 /var/www/trac/hogehoge

Then point your browser to http://localhost:8000/hogehoge.
There you can also browse the documentation for your installed
version of Trac, including information on further setup (such as
deploying Trac to a real web server).

The latest documentation can also always be found on the project
website:

  http://trac.edgewall.org/

Congratulations!


上記のようなメッセージが出たら成功。

Apacheの設定


今回は参考ページに従ってmod_wsgiを使います。
trac-adminコマンドを使ってcgi-bin/trac.wsgiファイルを作成します。

% sudo trac-admin /var/www/trac/hogehoge deploy /var/www/trac/hogehoge


今回は研究室内部のサーバーなので、Basic認証を選択。
Basic認証は暗号化されてないので外部サーバーに公開する場合は使わないように。
ユーザーとパスワードを設定。

sudo htpasswd -c /var/www/trac/hogehoge/.htpasswd user


最後のユーザー名も適当です。


/etc/apache2/sites-available/tracを以下のように編集。

% sudo vim /etc/apache2/sites-available/trac
WSGIScriptAlias /trac /var/www/trac/hogehoge/cgi-bin/trac.wsgi
<Directory /var/www/trac/hogehoge>
    WSGIApplicationGroup %{GLOBAL}
    Order deny,allow
    Allow from all
</Directory>

<Location "/trac/login">
    AuthType Basic
    AuthName "trac"
    AuthUserFile /var/www/trac/hogehoge/.htpasswd
    Require valid-user
</Location>


ファイルの所有者を'www-data'に変更。

% sudo chown -R www-data:www-data /var/www/trac


最後にapacheを再起動して完了。

% sudo service apache2 restart


これでWebブラウザからアクセスしてみると…、あれ?Tracの画面が表示されない…。何故(?_?)


小一時間ほど四苦八苦してみてサイト設定を有効にすることを忘れていたことに気づきました…。我ながらアホや。

% sudo a2ensite trac


これで無事完了。う~む、サクッとやるつもりが恐ろしく時間を掛けてしまった…(´Д`)