本手順では、以下の条件でインストールを行うものとします。 ご自身の環境に合わせて適宜読み替えてご利用ください。
サーバー | example.com |
作業ディレクトリ | /var/tmp |
インストールディレクトリ | /home/trac/ |
Subversion のレポジトリ | /home/svn/ |
データベース | SQLite3 |
Webサーバー実行ユーザー | webservd |
Tracに必要なパッケージをインストールします。
Python(バージョン2.3以降) | 2.5.1をインストール済み |
Subversion(バージョン1.0以降。※1.2.3又は1.3.1以降推奨) | 1.4.5をインストール済み |
ClearSilver(バージョン0.9.3以降) | 要インストール |
pyclearsilver | 要インストール |
ClearSilverとpyclearsilverをインストールします。
Python、Subversionは導入済みですのでインストールの必要はありません。
pkg-getコマンドは、どのディレクトリ投入してもかまいません。
rootユーザーで実行します。
# pkg-get -i clearsilver # pkg-get -i pyclearsilver
SQLiteかPostgreSQLを選択して利用してください。
ここでは、SQLiteを利用します。
SQLite 2.8xか3.x(推奨) | SQLite3インストール済み | SQLite本体 |
pysqlite2 | 要インストール | SQLiteのPythonドライバ |
PostgreSQL | インストール済み(ここではsqliteを利用します) | PostgreSQL本体 |
PyPgSQL | PostgreSQlを選択した場合に必要 | PostgreSQLのPythonドライバ |
pysqlite2をインストールします。
SQLite本体は導入済みですので、インストールの必要はありません。
# pkg-get -i pysqlite2
下記のプラグインをインストールします。
setuptools | プラグインのインストールに使用する |
docutils | Wiki の変わりに reStructuredText を使う |
SilverCity | ソースコードのハイライト |
SWIG | Subversion と python をつなぐのに必要 |
enscript | ASCII テキストを PostScript, HTML, RTF、プリティプリントに変換 |
ap2_modpython | openldap_rtのインストールに必要 |
openldap_rt | pysvnのインストールに必要 |
pysvn | SubversionをPythonで利用する為に必要 |
# pkg-get -i pysetuptools # pkg-get -i pydocutils # pkg-get -i silvercity # pkg-get -i swig # pkg-get -i enscript # pkg-get -i ap2_modpython # pkg-get -i openldap_rt # pkg-get -i pysvn
全て”<パッケージ名>のインストールに成功しました。”と表示されて正常にインストールされた事を確認してください。
Tracのファイルをダウンロードし、解凍します。 ここでは、インタアクト株式会社が提供している、日本語版を利用します。
# cd /var/tmp # wget [ファイルDL先URL] # unzip trac-0.10.4-ja-1.zip
# cd trac-0.10.4-ja-1 # python setup.py install
Subversionのリポジトリの作成を行います。 <project>部分は任意のプロジェクト名を入力してください。
# mkdir /home/svn # svnadmin create /home/svn/<project>
リビジョンの確認
# svn checkout file:///home/svn/<project> リビジョン 0 をチェックアウトしました。
リポジトリに対して、WEBサーバーの実行ユーザーからの書込み権限を設定します。
ここでは、ZoneExpressのデフォルトのwebservdを設定します。
# chown -R webservd:webservd /home/svn # chmod -R 770 /home/svn
# mkdir /home/trac # trac-admin /home/trac/<project名> initenv
Project Name [My Project]> <project> <--プロジェクト名を設定します。 Database connection string [sqlite:db/trac.db]> <--未入力でEnterを実行します。 Path to repository [/path/to/repos]> /home/svn/<project> <--作成したリポジトリのパスを入力します。 Templates directory [/usr/local/trac/share/trac/templates]> <--未入力でEnterを実行します。
以下のように表示されれば成功です。
--------------------------------------------------------------------- Project environment for 'project' created. You may now configure the environment by editing the file: /home/trac/project/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 /home/trac/project Then point your browser to http://localhost:8000/project. 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!
Warning: You should install the SVN bindings
起動確認を行います。
ここでは利用していない7999番ポートを利用しています。
# tracd --port 7999 /home/trac/<project>
WEBブラウザからhttp://example.com:7999/にアクセスします。
※example.comにはあなたのドメインを入力。
プロジェクト一覧が表示されるので、作成したプロジェクトをクリックします。
エラーなく表示されれば正常にインストールできています。
Tracdで動作確認できたら、Apacheで動作するように設定を行います。
ここではログインにBASIC認証を使用します。\\BASIC認証用パスワードファイルの作成を行います。
# htpasswd -c /home/trac/.htpasswd <任意のユーザー名> <任意のパスワード>
Apacheから読み書きが出来るようにオーナーグループの設定をします。
# chown -R webservd:webservd /home/trac
dso.confに設定を書き込みます。
#vi /opt/csw/apache2/etc/extra/dso.conf
以下の行を1番下の行に追加してください。
LoadModule python_module /opt/csw/apache2/libexec/mod_python.so
/opt/csw/apache2/etc/extra/directory.confを編集します。 バーチャルホストを利用している場合は環境に合わせたファイルを編集を行ってください。
# vi /opt/csw/apache2/etc/extra/directory.conf
以下の記述を追記します。
<Location /trac> SetHandler mod_python PythonHandler trac.web.modpython_frontend PythonOption TracUriRoot /trac PythonOption TracEnvParentDir /home/trac </Location>
以下のファイルを追記します。
<LocationMatch "/trac/[^/]+/login"> AuthType Basic AuthName "Trac" AuthUserFile /home/trac/.htpasswd Require valid-user </LocationMatch> <Location /svn> DAV svn SVNParentPath /home/svn # Limit write permission to list of valid users. <LimitExcept GET PROPFIND OPTIONS REPORT> # Require SSL connection for password protection. # SSLRequireSSL AuthType Basic AuthName "Authorization Realm" AuthUserFile /home/trac/.htpasswd Require valid-user </LimitExcept> </Location>
# svcadm restart http
http://example.com/tracにアクセスし、右上のログインをクリックし ユーザー、パスワードの確認画面が表示され、正常にログイン出切る事を確認してください。
以下のエラーメッセージが出力される場合は、BASIC認証が正確に設定されていない可能性があります。
再度設定を見直してください。
Internal Server Error 500 Internal Server Error (Authentication information not available. Please refer to the <a href="/trac/project1/wiki/TracInstall#ConfiguringAuthentication" title="Configuring Authentication">installation documentation</a>.)
エラーなくログインが出来ればインストールは完了です。