Changes between Version 1 and Version 2 of TracInstall


Ignore:
Timestamp:
09/18/14 10:48:12 (11 years ago)
Author:
trac
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • TracInstall

    v1 v2  
    1 = Trac インストールガイド 0.11 = #TracInstallationGuidefor0.11
     1= Trac Installation Guide for 0.12 =
    22[[TracGuideToc]]
    33
    4 Trac は Python で書かれており、データベースとして [http://sqlite.org/ SQLite], [http://www.postgresql.org/ PostgreSQL], [http://mysql.com/ MySQL] のどれかが必要です。 Trac は HTML レンダリングのために [http://genshi.edgewall.org Genshi] テンプレートシステムを使用します。
    5 
    6 Trac のインストールとセットアップに対する一般的な手順を以下に示します。 Trac を特定のシステムにインストールする手順は Trac Project サイトの [http://trac.edgewall.org/wiki/TracInstallPlatforms TracInstallPlatforms] にありますが、 '''まず最初に以下の一般的な手順を読み通して''' タスクの関係を確実に理解してください。
    7 
    8 == 簡単な方法 - リリースバージョン向け == #Short-Installareleasedversion
    9 クイックインストールをするためには [http://python.org Python-2.5], [http://peak.telecommunity.com/DevCenter/EasyInstall#installing-easy-install easy_install], SQlite-3.3.4 がすでにインストールされていなければなりません (各バージョンは、より新しいものでも可)。 (Genshi をビルドするのであれば、 python-dev (訳注: のような Python のビルド環境パッケージ) も必要になります)
    10 {{{
    11 sudo easy_install Trac
    12 }}}
    13 
    14 == インストール条件 == #Requirements
    15 Trac を動作させるためのハードウェア要件は、当然のことながらデータ (Wiki ページ, チケット, リビジョンの数) のボリュームやトラフィックに強く依存します。とても小さなプロジェクトであれば、 500MHz のプロセッサ一つに 128MB の RAM でも SQLite を使って充分動作させられます。高速なハードディスクであればさらに動作が快適になるでしょう。
    16 
     4Trac は Python で書かれており、データベースとして [http://sqlite.org/ SQLite], [http://postgresql.org/ PostgreSQL], [http://mysql.com/ MySQL] のどれかが必要です。 Trac は HTML レンダリングのために [http://genshi.edgewall.org Genshi] テンプレートシステムを使用します。
     5
     6バージョン 0.12 以降、 Trac はローカライズされているため、自分が普段使っている言語に翻訳されているかもしれません。 Trac のインタフェースで別の言語を使用したい場合は、任意のパッケージである [#OtherPythonPackages Babel] を **最初に** インストールする必要があります。 Babel がない場合、通常通り、デフォルトの英語バージョンのみ使用することができます。もし、 Babel を Trac よりも後にインストールした場合は、 Trac を再インストールする必要があります。
     7
     8新しい言語での翻訳の作成や、すでにある言語での翻訳のエンハンスをコントリビュートした場合は [http://trac.edgewall.org/wiki/TracL10N TracL10N] を見てみてください。 (訳注: 日本語の翻訳はすでにコントリビュートされています)
     9
     10Trac のインストールとセットアップに対する一般的な手順と必要な条件を以下に示します。 Trac を特定のシステムにインストールする手順は Trac Project サイトの [trac:wiki:TracInstallPlatforms TracInstallPlatforms] にありますが、 '''まず最初に以下の一般的な手順を読み通して''' タスクの関係を確実に理解してください。
     11
     12[[PageOutline(2-3,インストール手順,inline)]]
     13
     14== 依存関係 == #Dependencies
     15=== 必須の依存関係 === #MandatoryDependencies
    1716Trac をインストールするためには以下のソフトウェアパッケージがインストールされていなければなりません:
    1817
    19  * [http://www.python.org/ Python] 2.3 以上
    20    * XML 関連が組み込まれた mod_python を使用する場合、 python-2.5 を使用してください。 expat モジュールがネームスペース化されているので、 apache のクラッシュが引き起こされることがなくなります。 (詳細は [http://www.dscpl.com.au/wiki/ModPython/Articles/ExpatCausingApacheCrash ここ] を参照してください) 。
    21    * RPM ベースのシステムでは、 `python-devel` と `python-xml` パッケージが必要になるかもしれません。
    22    * 注意事項を参照してください。 [http://trac.edgewall.org/wiki/TracOnWindows/Python2.5 "TracOnWindows/Python2.5"]
    23  * [http://peak.telecommunity.com/DevCenter/setuptools setuptools] 0.6 以上
    24  * [http://genshi.edgewall.org/wiki/Download Genshi] 0.5 以上 (バージョン 0.4.1 以上という記述は 0.11 のリリース候補以前の場合でした)
    25  * データベースシステムと対応する Python ドライバが必要です。
    26    データベースは SQLite, PostgreSQL, ''MySQL (実験的)'' のどれかが使えます。
    27  * プラグインが必要とする場合は [http://www.clearsilver.net/ ClearSilver] が必要です。
    28 
    29 ==== SQLiteの場合 ==== #ForSQLite
    30 
    31  * [http://www.sqlite.org/ SQLite] 3.3.4 以上を推奨します (Note: Python 2.5.2 には同梱されています)。
    32  * Python-2.5 を使用しないなら [http://pysqlite.org/ PySQLite] が必要です (2.3.2 を推奨します)。 SQLite 2.x を使用する場合 PySQLite version 1.x 、 SQLite 3.x を使用する場合 PySQLite version 2.x がそれぞれ必要です。 詳細は [http://trac.edgewall.org/wiki/PySqlite PySqlite] を参照してください。
    33 
    34 ''Note: 'contrib/trac-post-commit-hook' を使用する場合、 Trac は 0.9 以降、 PySQLite は 2.x が必要です。
    35 
    36 ''Note: Mac OS X のユーザは注意してください; Apple が提供している SQLite は AFP や SMB のようなネットワークファイルシステムでのがいるロックを行うための追加コードが含まれています。このコードは現在のメインラインのソース (3.3.6) では存在しませんので、ソースから SQLite をビルドした場合にこのようなファイルシステムでは正しく機能しないでしょう - 通常は "{{{database is locked}}}" というエラーが発生します。 Apple のコードをベースにした 3.3.6 向けの [http://www.alastairs-place.net/2006/07/sqlite_and_mac/ パッチ] があります。また、 Apple から提供されている別のバージョン (今のところ 3.1.3) を使用するのがおそらく最も良いでしょう。''
    37 
    38 ==== PostgreSQLの場合 ==== #ForPostgreSQL
    39 
    40  * [http://www.postgresql.org/ PostgreSQL]
    41  * [http://initd.org/projects/psycopg2 psycopg2]
    42  * See [http://trac.edgewall.org/wiki/DatabaseBackend#Postgresql DatabaseBackend]
    43 
    44 '''Warning''': PostgreSQL 8.3 は厳密な型チェックメカニズムを採用しています。 Trac で PostgreSQL の バージョン 8.3 を使用するには、 [http://trac.edgewall.org/changeset/6512 trac-0.11] 以降でなければなりません。
    45 
    46 ==== MySQLの場合 ==== #ForMySQL
    47 
    48 '''Warning''': MySQL のサポートは今のところ ''まだ'' 実験段階です。 環境によっては動作しますが、特に unicode の使用と、リポジトリキャッシュのキー長に関して、いくつかの問題が残っています。より詳細な情報は [http://trac.edgewall.org/wiki/MySqlDb MySqlDb] を参照してください。
    49 
    50  * [http://mysql.com/ MySQL] 4.1 以上
    51  * [http://sf.net/projects/mysql-python MySQLdb] 1.2.1 以上
    52 
    53 == 非必須の条件 == #OptionalRequirements
     18 * [http://www.python.org/ Python], 2.4 以上 3.0 未満
     19   //(Python 2.3 のサポートは、このリリース(訳注: 0.12)で打ち切られました。そして、このリリースは Python 2.4 をサポートする最後の Trac となります)//
     20 * [http://peak.telecommunity.com/DevCenter/setuptools setuptools], 0.6 以上
     21 * [http://genshi.edgewall.org/wiki/Download Genshi], 0.6 以上 (0.7dev 未満、つまり trunk は使用できません)
     22
     23また、データベースと、それに対応する Python のバインディングが必要です。
     24データベースは SQLite, PostgreSQL, MySQL のいずれかが使用できます。
     25
     26==== SQLite の場合 ==== #ForSQLite
     27
     28Python 2.5 か 2.6 の場合は、必要なライブラリは同梱されています。
     29
     30Python 2.4 の場合、 pysqlite が必要です。 pysqlite は
     31[http://code.google.com/p/pysqlite/downloads/list google code] から Windows インストーラやソースからのビルド用の tar.gz アーカイブがダウンロードできます:
     32{{{
     33$ tar xvfz <version>.tar.gz
     34$ cd <version>
     35$ python setup.py build_static install
     36}}}
     37 
     38上記の手順で SQLite のコードも展開されバインディングがビルドされます。
     39
     40SQLite をインストールするときに、システムが開発用のヘッダを必要とするかもしれません。これらのヘッダなしでは、ビルドしたときに GCC 関連のエラーがいろいろと出るでしょう:
     41
     42{{{
     43$ apt-get install libsqlite3-dev
     44}}}
     45
     46SQLite 2.x も !PySqlite 1.1.x ももはやサポートしていません。
     47
     48既知のバグとして、 !PySqlite バージョン 2.5.2-4 では、 Trac のデータベースを
     490.11.x から 0.12. にアップグレードすることができません。 2.5.5 以降か 2.5.1 と
     50それ以前のバージョンを使用して下さい。詳細については、 [http://trac.edgewall.org/ticket/9434 本家チケット 9434] を参照して下さい。
     51
     52[http://trac.edgewall.org/wiki/PySqlite PySqlite] も参照することができます。
     53
     54==== PostgreSQL の場合 #ForPostgreSQL
     55
     56下記いずれかの Python バインディングをインストールする必要があります:
     57 * [http://www.postgresql.org/ PostgreSQL], バージョン 8.0 以降
     58 * [http://pypi.python.org/pypi/psycopg2 psycopg2]
     59
     60詳しくは [http://trac.edgewall.org/wiki/DatabaseBackend#Postgresql DatabaseBackend] を参照してください。
     61
     62
     63==== MySQL の場合 ==== #ForMySQL
     64
     65Trac は以下のガイドラインで、 MySQL でも良好に動作するようになりました。
     66
     67 * [http://mysql.com/ MySQL], 5.0 以降
     68 * [http://sf.net/projects/mysql-python MySQLdb], 1.2.2 以降
     69
     70'''非常に''' 重要なことが記載されているので、データベースを作成する前に、[http://trac.edgewall.org/wiki/MySqlDb MySqlDb] のページを注意深く読んで下さい。
     71
     72=== 任意の依存関係 === #OptionalDependencies
    5473
    5574==== バージョン管理システム ==== #VersionControlSystem
    5675
    57 '''Please note:''' Subversion を使用するなら Trac を同じマシンにインストールする必要があります。リモートリポジトリは現在サポートされていません。
    58 
    59  * [http://subversion.tigris.org/ Subversion] 1.0 以上 (1.2.4, 1.3.2, 1.4.2 のいずれかが推奨されます) と '''''対応する''''' Python バインディングに対応しています。トラブルシューティングには [http://trac.edgewall.org/wiki///trac.edgewall.org/wiki/TracSubversion TracSubversion] を参照してください。
    60    * Trac は Subversion のディストリビューションに含まれる [http://svnbook.red-bean.com/svnbook-1.1/ch08s02.html#svn-ch-8-sect-2.3 SWIG] バインディングを使用します。 [http://pysvn.tigris.org/ PySVN] では '''ありません''' (PySVN は時々、標準の SWIG バインディングと混同されることがあります)。
    61    * SWIG バインディングを含まない Subversion が既にインストールされている場合、 Unix であれば `make swig-py` と `make install-swig-py` による Subversion の再構成が必要です。
    62    * Win32 の場合、 [http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=91 pre-compiled bindings] から取得してください。
    63  * サードパーティから他のバージョン管理システムのサポートが提供されています。 [http://trac.edgewal.org/wiki/PluginList PluginList] と [http://trac.edgewall.org/wiki/VersioningSystemBackend VersioningSystemBackend] を参照してください。
     76===== Subversion =====
     77
     78[http://subversion.apache.org/ Subversion] 1.5.x または 1.6.x と '''''対応する''''' Python バインディング。
     79
     80様々なプラットフォーム向けに [http://subversion.apache.org/packages.html コンパイル済みの SWIG バインディング] が用意されています。 Windows パッケージに関する詳細は TracSubversion を参照してください。
     81
     821.4 系の古いバージョンも今のところ動作します。トラブルシューティングの情報が [trac:TracSubversion#Troubleshooting TracSubversion] のページに記載されていますので、確認してください。 Trac が使用する svn の中心機能 (例: svn_path_canonicalize) が (svn ライブラリそのものには存在していたとしても) svn のバージョン 1.3.x 以前では Python の swig のラッパーで実装されていないため、 1.4.0 より以前のバージョンでは、動作しないかもしれません。
     83
     84Note: Trac は [http://pysvn.tigris.org/ PySVN] のような新しい `ctype` 形式のバインディングでは '''動作しません'''。
     85
     86'''重要な Note:''' Subversion を使用するなら Trac を '''同じマシン''' にインストールする必要があります。リモートリポジトリは現在[http://trac.edgewall.org/ticket/493 サポートされていません]。
     87
     88
     89===== その他のバージョン管理システム ===== #Others
     90
     91Subversion 以外のバージョン管理システムのサポートはサードパーティから提供されます。 [http://trac.edgewall.org/wiki/PluginList PluginList] や [http://trac.edgewall.org/wiki/VersionControlSystem VersionControlSystem] を参照して下さい。
    6492
    6593==== Web サーバ ==== #WebServer
    66  * CGI が利用可能な Web サーバ (TracCgi を参照してください) または
    67  * [http://www.fastcgi.com/ FastCGI] が利用可能な Web サーバ (TracFastCgi を参照してください) または
    68  * [http://tomcat.apache.org/connectors-doc/ajp/ajpv13a.html AJP] 互換の Web サーバ ([http://trac.edgewall.org/wiki/TracOnWindowsIisAjp TracOnWindowsIisAjp] を参照してください) または
    69  * [http://httpd.apache.org/ Apache] と [http://code.google.com/p/modwsgi/ mod_wsgi] ([wiki:TracModWSGI] や http://code.google.com/p/modwsgi/wiki/IntegrationWithTrac を参照してください)
    70     * mod_wsgi は非常に新しく、いくらか実験的ですが、これは Apache 1.3, 2.0 または 2.2 で動作するはずで、 mod_python を使用するよりも良いパフォーマンスが出るはずです。
    71  * [http://httpd.apache.org/ Apache] と [http://www.modpython.org/ mod_python 3.1.3 以降] (TracModPython を参照してください)
    72     * mod_python をインストールするときは、開発向けの Python と Apache が必須になります (実際にはライブラリとヘッダファイル) 。
    73 
    74 Trac を Apache と [http://www.modpython.org/ mod_python 2.7] で動かすことも可能です。([http://trac.edgewall.org/wiki/TracModPython2.7 TracModPython2.7] を参照してください) 。このガイドは 0.8.4 以降更新されていないので動作が異なるかもしれません。
    75 
    76 ==== その他の Python ユーティリティ ==== #OtherPythonUtilities
    77  * WikiRestructuredText は [http://docutils.sourceforge.net/ docutils] 0.3.9 以降が必要です。
    78  * '''シンタックスハイライト''' を行うには [http://pygments.pocoo.org Pygments] が必要です。 [http://silvercity.sourceforge.net/ SilverCity] の 0.9.7 以降や、 [http://gnu.org/software/enscript/enscript.html GNU Enscript] なども併せて使用することができます。詳細は TracSyntaxColoring を参照してください。
    79  * [http://pytz.sf.net pytz] からタイムゾーンの完全なリストを取得します。 pytz を使用しなければ Trac は内部実装された短いリストを使用します。
     94Trac にはサーバ機能が組み込まれているので、 Web サーバは必須ではありません。このページに下にある [#RunningtheStandaloneServer スタンドアロンサーバの起動] セクションを参照してください。
     95
     96Trac は下記の環境において動作します。
     97 * [http://httpd.apache.org/ Apache] との組み合わせで
     98   - [http://code.google.com/p/modwsgi/ mod_wsgi], [wiki:TracModWSGI] を参照 (推奨)
     99   - //[http://modpython.org/ mod_python 3.3.1], TracModPython を参照 (非推奨)//
     100 * [http://www.fastcgi.com/ FastCGI] 対応 Web サーバ, TracFastCgi を参照
     101 * [http://tomcat.apache.org/connectors-doc/ajp/ajpv13a.html AJP] 対応 Web
     102   サーバ, [trac:TracOnWindowsIisAjp] を参照
     103 * IIS との組み合わせで [http://code.google.com/p/isapi-wsgi/ Isapi-wsgi], [trac:TracOnWindowsIisIsapi] を参照
     104 * //最後の手段として CGI 対応 Web サーバ(TracCgi 参照)。 しかし Trac を CGI スクリプトとして使用することは
     105   全く推奨されていませんので、上記に挙げた方法を選択して下さい。//
     106   
     107
     108==== その他の Python パッケージ ==== #OtherPythonPackages
     109
     110 * [http://babel.edgewall.org Babel], 0.9.5
     111   ローカライズの機能を使用する場合は必要[[BR]]
     112   ''Note: '' 他の言語で Trac のインタフェースを表示したい場合、必ず最初に Babel をインストールして下さい。 Babel をインストールしていない場合は、通常通りデフォルトの英語バージョンの Trac を使用することになります。 Babel を後からインストールした場合、 Trac を再インストールする必要があります。
     113 * [http://docutils.sourceforge.net/ docutils], 0.3.9 以上
     114   WikiRestructuredText の機能を使用する場合は必要
     115 * [http://pygments.pocoo.org Pygments]
     116   [wiki:TracSyntaxColoring シンタックスハイライティング] の機能を使用する場合は必要
     117   [http://silvercity.sourceforge.net/ SilverCity] や
     118   [http://gnu.org/software/enscript/enscript.html Enscript] も、今のところ使用できますが、
     119   サポートを打ち切る予定なので、 Pygments を使用してください。
     120 * [http://pytz.sf.net pytz] , タイムゾーンの完全なリストを取得する場合に必要
     121   pytz がない場合、 Trac は内部で定義している
     122   短いタイムゾーンの実装にフォールバックします。
    80123
    81124'''Attention''': これらの依存関係は様々なバージョンで必ずしも置き換えできるとは限らないので、上記のバージョン番号に注意してください。 Trac を動かす上で問題が発生した場合は [http://trac.edgewall.org/wiki/MailingList メーリングリスト] や [http://trac.edgewall.org/wiki/IrcChannel IRC チャネル] で質問をする前にすべての依存関係を再度確認してください。
     
    83126これらのパッケージのドキュメンテーションを参照して、それらが最も上手にインストールできる方法を探してください。また [http://trac.edgewall.org/wiki/TracInstallPlatforms プラットフォーム特有の説明] の多くに、これらの依存関係のインストール方法が記述されています。しかしながら [http://trac.edgewall.org/wiki/TracInstallPlatforms プラットフォーム特有の説明] の情報はあなたがインストールしている Trac より古い バージョンについての説明があることを覚えておいてください (なんと Trac 0.8 に関する説明をしているページもあります)。
    84127
    85 == Tracのインストール == #InstallingTrac
    86 
    87 Trac をインストールする 1 つの方法は `setuptools` を使用することです。
    88 setuptools は subversion のリポジトリから Trac をインストールすることができます;
    89 0.11 のリリースバージョンをインストールするための例を以下に示します:
    90 {{{
    91 easy_install http://svn.edgewall.org/repos/trac/tags/trac-0.11
    92 }}}
    93 
    94 もちろん、ソースディレクトリのトップでの典型的な python セットアップもできます:
     128
     129== Trac のインストール == #InstallingTrac
     130=== `easy_install` を使用したインストール ===#Usingeasy_install
     131Trac をインストールする方法のひとつに [http://pypi.python.org/pypi/setuptools setuptools] の利用があります。
     132setuptools を使用すると、 Trac を Subversion リポジトリからインストールすることもできます;
     133
     134例:
     135
     136 - 初めに最新の安定バージョン Trac 0.12.3 及び ローカライズサポートをインストールします:
     137   {{{
     138   easy_install Babel==0.9.5
     139   easy_install Trac
     140   }}}
     141   ''`easy_install` コマンドを二回、別々に実行することはとても重要です。そうしなければ、メッセージカタログが生成されません。''
     142
     143 - 最新バージョンの Trac にアップグレードする:
     144   {{{
     145   easy_install -U Trac
     146   }}}
     147
     148 - 最新の開発中のバージョン (0.13dev) にアップグレードする:
     149   {{{
     150   easy_install -U Trac==dev
     151   }}}
     152
     153アップグレードの場合には、必ず TracUpgrade を読むようにして下さい。
     154
     155=== ソースからのインストール === #Fromsource
     156よりインストールを管理したい場合には、アーカイブにあるソースをダウンロードできます。また、本家 [http://trac.edgewall.org/wiki/TracRepositories ソースコードリポジトリ] からチェックアウトすることができます。
     157
     158必ず事前にインストール条件を整えておいて下さい。 Genshi と Babel のソースパッケージは http://www.edgewall.org で手に入れることができ、同様の手順でインストールすることができます。また、これらのパッケージは単に `easy_install` でインストールすることもできます。[#Usingeasy_install 上記] 参照。
     159
     160Trac アーカイブの解凍またはチェックアウトを実行した後、トップレベルのディレクトリに移動し、以下を実行します:
    95161{{{
    96162$ python ./setup.py install
    97163}}}
    98164
    99 ''Note: このステップを実行するためには root 権限 (または root 権限と同等の権限) が必要です。''
     165このステップを実行するためには root 権限 (または root 権限と同等の権限) が必要です。
    100166
    101167この操作で Python のソースコードがバイトコンパイルされ、 .egg ファイルかディレクトリが Python インストールの `site-packages` ディレクトリにインストールされます。
    102 .egg には htdocs や templates のような、ソースファイル以外に標準インストールの Trac が必要とするすべてのリソースが含まれています。
     168.egg には htdocs や templates のようなソースファイル以外に標準の Trac が必要とするすべてのリソースが含まれています。
    103169
    104170このスクリプトは [wiki:TracStandalone tracd] スタンドアロンサーバと一緒に、 [wiki:TracEnvironment プロジェクト Environment] を作成し維持するための [wiki:TracAdmin trac-admin] コマンドラインツールをインストールします。
    105171
    106 ==== 高度なオプション ==== #AdvancedOptions
    107 
    108 Trac のインストール場所を変えるなどの高度なインストールオプションを知りたければ以下を実行してください:
     172ソースからインストールする場合や、新しい言語で Trac を国際化するためには Babel をインストールしておく必要があります。この場合も `install` を実行するだけです (Babel がインストールされていない状態で、すでに Trac をインストールしてしまった場合でも、 `install` をやり直すことで Babel サポートを有効化できます):
     173{{{
     174$ python ./setup.py install
     175}}}
     176また、 `bdist_egg` を実行すると dist ディレクトリに作成される .egg ファイルをインストール先にコピーしたり、 (`bdist_wininst` の実行によって) Windows インストーラを作成しても構いません。
     177
     178=== 高度なオプション === #AdvancedOptions
     179
     180==== `easy_install` におけるインストール場所の指定 ==== #Customlocationwitheasy_install
     181
     182Trac のインストール場所を変えるなどの高度なインストールオプションを知りたければ以下を実行してください:
    109183{{{
    110184easy_install --help
     
    121195easy_install --prefix=/usr/local --install-dir=/Library/Python/2.5/site-packages
    122196}}}
     197Note: Mac OS X 10.6 上で {{{ easy_install http://svn.edgewall.org/repos/trac/trunk }}} を使用する場合は、オプションを指定しなくても {{{ /usr/local }}} および {{{ /Library/Python/2.6/site-packages }}} にインストールされます。
    123198
    124199上記の例は、 `tracd` と `trac-admin` コマンドを `/usr/local/bin` に、 Trac のライブラリと依存ファイルを `/Library/Python/2.5/site-packages` にインストールします。これらのパスは Apple での Pyhton サードパーティアプリケーションの標準ロケーションです。(訳注: つまり、上記と違うパスにインストールしたい場合のみ、オプションの指定が必要になります)
    125200
     201==== `pip` を使用したインストール ==== #Usingpip
     202'pip' は easy_install のリプレースであり、とても簡単に素早く Python パッケージをインストールすることができます。
     203Trac を 5 分程度でインストール、起動できます:
     204
     205pip によってインストールされる場所を /opt/user/trac とした場合の例です:
     206
     207 -
     208{{{
     209pip -E /opt/user/trac install trac psycopg2
     210}}}
     211または
     212 -
     213{{{
     214pip -E /opt/user/trac install trac mysql-python
     215}}}
     216
     217PostgreSQL (libpg-dev) や MySQL (libmysqlclient-dev) へのバインディングも自動でビルドできるように、 pip が OS 固有のヘッダファイルを確実に利用できるようにして下さい。
     218
     219また pip は (Genshi, Pygments などの) 依存関係を解決し、 pypi.python.org から最新のパッケージをダウンロードして、 /opt/user/trac の配下にインストールするところまで自動化されています。
     220
     221すべてのコマンド (tracd, trac-admin) は /opt/user/trac/bin の配下にインストールされます。 mod_python (!PythonHandler ディレクティブを使用する場合) や mod_wsgi (!WSGIDaemonProcess ディレクティブを使用する場合) においても活用することができます。
     222
     223加えて、 Trac プラグインのうちのいくつか ([http://pypi.python.org/pypi?:action=search&term=trac&submit=search ここ] で一覧を見ることができます) も pip からインストールすることが可能です。
     224
     225
     226
    126227== プロジェクト Environment の作成 == #CreatingaProjectEnvironment
    127228
    128 [wiki:TracEnvironment Trac Environment] は Trac が Wiki ページ、チケット、レポート、設定などの情報を保存するバックエンドストレージです。基本的に人間が読み込み可能な構成ファイルと他の様々なファイルやディレクトリで構成されます。
    129 
    130 新しい環境は [wiki:TracAdmin trac-admin] を使用して作成します:
     229[TracEnvironment Trac Environment] は Trac が Wiki ページ、チケット、レポート、設定などの情報を保存するバックエンドストレージです。基本的に人間が読み込み可能な [TracIni 構成ファイル] と他の様々なファイルやディレクトリで構成されます。
     230
     231新しい Environment は [wiki:TracAdmin trac-admin] を使用して作成します:
    131232{{{
    132233$ trac-admin /path/to/myproject initenv
    133234}}}
    134235
    135 [wiki:TracAdmin trac-admin] はプロジェクト名、 [wiki:TracEnvironment#SourceCodeRepository ソースコードのリポジトリ] のタイプとパス、 [wiki:TracEnvironment#DatabaseConnectionStrings データベース接続文字列] など、 Environment を作成するのに必要な情報の入力を促します。これらのオプションを指定せず、空白を入力するとデフォルト値が使用されます。 SQLite がインストールされている場合、データベース接続文字列はいつでもデフォルト値で動作します。バージョン管理システムのリポジトリへのパスを指定しない場合、バージョン管理に関するすべての機能が無効化されますが、基本システムが動いていればいつでもバージョン管理に関する機能を追加することができます。
    136 
    137 また、 ここで指定した値は [wiki:TracIni] 設定ファイルを直接編集することで後から変更できることに留意してください。
    138 
    139 ''Note: Web サーバのユーザアカウントは Environment のディレクトリと、その中のすべてのファイルに対する書き込み権限が必要です。 Linux では、 Web サーバが apache というユーザ、 apache というグループで起動している場合は以下のように入力してください。:''
    140 
    141   chown -R apache.apache /path/to/myproject
    142 
    143 '''Warning: インストールされたファイルの中から trac.cgi を探しても見つかりません。現在のドキュメントは不完全な状態です; trac-admin の 'deploy' コマンドを使う必要があります。詳細は http://trac.edgewall.org/ticket/7312 や http://trac.edgewall.org/ticket/6827 を参照してください。'''
    144 
    145 == スタンドアロンサーバの起動 == #RunningtheStandaloneServer
     236[TracAdmin trac-admin] は、プロジェクトの名前や [TracEnvironment#DatabaseConnectionStrings データベース接続文字列] など、 Environment を新規作成するために必要な情報を入力するためのプロンプトを表示します。これらの設定項目について特に変更が必要ない場合は、単に `<Enter>` を押下すると、デフォルト値が使用されます。
     237
     238データベース接続文字列のデフォルトは SQLite が使用されます。 SQLite がインストールされている場合は、他の設定は不要です。
     239他の [http://trac.edgewall.org/wiki/DatabaseBackend データベースバックエンド] を使用する場合は、あらかじめデータベースが使用可能な状態にしておかねばなりません。
     240
     2410.12 以降で Trac は、新しい Environment の作成時に [TracEnvironment#SourceCodeRepository ソースコードリポジトリ] を尋ねないようになりました。リポジトリを後で [TracRepositoryAdmin 追加する] までの間、バージョン管理のサポートは無効化されます。
     242
     243また、 ここで指定した値は [TracIni conf/trac.ini] 設定ファイルを直接編集することで後から変更できます。
     244
     245最後に、 Web のフロントエンドを実行しているユーザアカウントは、 Environment のディレクトリと、その中のすべてのファイルに対する書き込み権限が必要です。 `trac-admin ... initenv` の実行を該当するユーザで実行した場合は、この作業は不要ですが、そうでない場合、ただしユーザに権限を付与する作業が必要になります。たとえば Linux で `apache` ユーザ `apache` グループで Web サーバを起動する場合は:
     246{{{
     247# chown -R apache.apache /path/to/myproject
     248}}}
     249
     250{{{#!div class=important
     251'''警告''' アカウント名とプロジェクトパスには ASCII 文字のみを使用して下さい。 unicode 文字はサポートしていません。
     252}}}
     253
     254
     255== Trac の利用 == #DeployingTrac
     256
     257=== スタンドアロンサーバの起動 === #RunningtheStandaloneServer
    146258
    147259Trac 環境を作成した後に、スタンドアロンサーバ [wiki:TracStandalone tracd] を実行することで簡単に Web インタフェースを試すことができます。
     
    150262}}}
    151263
    152 ブラウザを起動して、 `http://localhost:8000/` にアクセスしてください。 tracd が認識しているすべての Environment の簡単な一覧が表示されます。作成した Environment へのリンクにアクセスすることで Trac が動作中であることを確認できます。 Trac でプロジェクトをひとつだけ管理したい場合、以下のように起動することで、スタンドアロンサーバは Environment 一覧の表示をスキップして、直接 Environment を表示します:
     264ブラウザを起動して、 `http://localhost:8000/` にアクセスしてください。 `tracd` が認識しているすべての Environment の簡単な一覧が表示されます。作成した Environment へのリンクにアクセスすることで Trac が動作中であることを確認できます。 Trac でプロジェクトをひとつだけ管理したい場合、以下のように起動することで、スタンドアロンサーバは Environment 一覧の表示をスキップして、直接 Environment を表示します:
    153265{{{
    154266$ tracd -s --port 8000 /path/to/myproject
    155267}}}
    156268
    157 
    158 == Web サーバ上での Trac の起動 == #RunningTraconaWebServer
    159 
    160 Trac に "真の" Web サーバから接続するには 3 つの方法があります: [wiki:TracCgi CGI], [wiki:TracFastCgi FastCGI], [wiki:TracModPython mod_python] です。まともな性能を出すには FastCGI か mod_python のどちらかを使用することが推奨されます。
    161 
    162 また、新しいコードを実行することを恐れていないのであれば [wiki:TracModWSGI mod_wsgi] を実行してみることもできます。 mod_wsgi は mod_python 以上の性能を提供するはずですが、 mod_python に比べ充分テストされたわけではありません。
    163 
    164 Trac では [http://trac.edgewall.org/wiki/TracOnWindowsIisAjp AJP] も使用できます。これを使うと IIS とも接続することができます。
     269=== Web サーバ上での Trac の起動 === #RunningTraconaWebServer
     270
     271Trac には "実際の" Web サーバへ接続するために、いくつかの選択肢があります:
     272 - [wiki:TracFastCgi FastCGI]
     273 - [wiki:TracModWSGI mod_wsgi]
     274 - //[wiki:TracModPython mod_python] (mod_python は現在活発なメンテナンスが行われていないため、推奨されません)//
     275 - //[wiki:TracCgi CGI] (最適なパフォーマンスに遠く及ばないため、使用すべきではありません)//
     276
     277Trac では [trac:TracOnWindowsIisAjp AJP] もサポートしており、IIS と接続したい場合に選択肢の一つとなるかもしれません。その他の選択肢もあります: [trac:TracNginxRecipe nginx], [http://projects.unbit.it/uwsgi/wiki/Example#Traconapacheinasub-uri uwsgi], [trac:TracOnWindowsIisIsapi Isapi-wsgi] 等。
     278
     279==== Trac の cgi-bin ディレクトリを生成する ==== #cgi-bin
     280
     281Trac を FastCGI などで正しく機能させるには、 FastCGI であれば `trac.fcgi` ファイル、 mod_wsgi であれば `trac.wsgi` ファイルが必要となります。これらのファイルは適切な Python コードをロードする Python スクリプトです。 [wiki:TracAdmin trac-admin] コマンドの `deploy` オプションを使用することで生成できます。
     282
     283若干の「卵が先か鶏が先か」問題があります。 [wiki:TracAdmin trac-admin] コマンドが機能するためには Environment が必要なのですが、 deploy には既に存在するディレクトリは使用できません。これに起因して、 Environment は depoly するディレクトリのサブディレクトリを使用することができません。この制限を回避するには次のようにします:
     284{{{
     285mkdir -p /usr/share/trac/projects/my-project
     286trac-admin /usr/share/trac/projects/my-project initenv
     287trac-admin /usr/share/trac/projects/my-project deploy /tmp/deploy
     288mv /tmp/deploy/* /usr/share/trac
     289}}}
     290
     291
     292==== 静的なリソースをマッピングする ==== #MappingStatcResources
     293
     294特に設定することなく Trac はスタイルシートや画像のような静的なリソースを扱うことができます。tracd は唯一基本的な動作環境ですが、 Web サーバがそれら静的リソースを直接供給するように設定することより、はるかに最適になります。(CGI でセットアップした場合、'''極めて望ましくない''' し、著しい性能悪化の原因となります)
     295
     296[http://httpd.apache.org/ Apache] のような Web サーバはリソースに対して "Alias" を設定することで仮想の URL を与え、サーバのファイルシステムのレイアウトとは異なる位置にマップすることができます。また、Trac自身によるこれらの要求に対する処理を避けて、直接ファイルシステム上のディレクトリへ静的リソースに対する要求をマッピングすることができます。
     297
     298静的なリソースに対する主要な URL パスとして `/chrome/common` と `/chrome/site` があります。プラグインを使用している場合、各々の静的リソースとして `/chrome/<plugin>` のようなパスが追加されていることがありますが、主要なパスに対して追加を行えるだけなので、 `/chrome` に対して `Alias` を設定しても、プラグインが提供する静的リソースに対してアクセスできる訳ではありません。(訳注: このような場合 `trac-admin` の `deploy` で作成された `htdocs` ディレクトリに対して `Alias` を使用してください)
     299
     300Note: ファイルシステムにおける静的なリソースを取得するためには、最初に [TracAdmin trac-admin] の ` <environment> deploy` コマンドを使用して、 Trac 関連のリソースを拡張する必要があります。
     301[[TracAdminHelp(deploy)]]
     302
     303ターゲットの `<directory>` は、以下のように `htdocs` ディレクトリに含まれます:
     304 - `site/` - Environment 内の `htdocs/` ディレクトリのコピーです
     305 - `common/` - Trac 自身が持つ静的なリソース
     306 - `<plugins>/` - Environment で使用可能なプラグインによって管理される個々のリソースディレクトリ
     307
     308===== 例: Apache と `ScriptAlias` ===== #ScriptAlias-example
     309
     310以下のような環境を仮定すると:
     311{{{
     312$ trac-admin /var/trac/env deploy /path/to/trac/htdocs/common
     313}}}
     314
     315Apache の設定ファイル内において `ScriptAlias` や `WSGIScriptAlias` の記述(Trac アプリケーションへの他のすべてのリクエストに対するマップの記述) ''より上に'' 以下のブロックを追記します。 パスは環境に合わせ変更してください:
     316{{{
     317Alias /trac/chrome/common /path/to/trac/htdocs/common
     318Alias /trac/chrome/site /path/to/trac/htdocs/site
     319
     320<Directory "/path/to/www/trac/htdocs">
     321  Order allow,deny
     322  Allow from all
     323</Directory>
     324}}}
     325
     326もし mod_python を使用している場合、この設定を追加した方が良いかもしれません(使用していない場合は、このエイリアスは無視されます):
     327{{{
     328<Location "/trac/chrome/common/">
     329  SetHandler None
     330</Location>
     331}}}
     332
     333Note: `trac.*cgi` スクリプトを `/trac` にマップしている場合、 `/trac/chrome/common` を加えたパスに対するリクエストは、静的リソースで処理するように割り込みを加えます。
     334
     335同様に、静的なリソースを project の `htdocs` ディレクトリで使用している場合 (テーマの中で `/trac/chrome/site` を参照しているなど)、 これらのリソースを供給するよう Apache を設定することが出来ます。(再度、.*cgi スクリプトの `ScriptAlias` や `WSGIScriptAlias` ''より上に'' 以下のブロックを記述します。インストール状況に合わせて、ファイル名やロケーションは適宜変更してください):
     336{{{
     337Alias /trac/chrome/site /path/to/projectenv/htdocs
     338
     339<Directory "/path/to/projectenv/htdocs">
     340  Order allow,deny
     341  Allow from all
     342</Directory>
     343}}}
     344
     345一方で `/trac/chrome/common` をエイリアスとするような場合、 Trac では [wiki:TracIni#trac-section| [trac] htdocs_location] を設定することで、それらリソースに対して直接リンクを生成することができます:
     346{{{
     347[trac]
     348htdocs_location = http://static.example.org/trac-common/
     349}}}
     350Note: これは 静的なリソースを供給する専用のドメインを簡単に設定します。([http://code.google.com/speed/page-speed/docs/request.html#ServeFromCookielessDomain cookie-less])
     351
     352当然、Web サーバのドキュメントルートにディレクトリをコピーする(又は、リンクする)等して、特定の URL で Web サーバに接続できるよう Trac の `htdocs/common` ディレクトリを作成する必要があります。
     353{{{
     354$ ln -s /path/to/trac/htdocs/common /var/www/static.example.org/trac-common
     355}}}
     356
    165357
    166358==== プラグインキャッシュの設定 ==== #SettingupthePluginCache
    167359
    168 Python プラグインの中にはキャッシュディレクトリを必要とするものがあります。デフォルトではキャッシュディレクトリは、現在のユーザのホームディレクトリに置かれます。 Trac を Web サーバで動作させている場合、ホームディレクトリを持たない専用ユーザであることが多く (強く推奨します)、プラグインの起動が妨げられることがあります。キャッシュディレクトリの場所を変更するには、環境変数 PYTHON_EGG_CACHE を設定してください。設定方法の詳細は使用しているサーバのドキュメントから参照してください。
     360Python プラグインの中にはキャッシュディレクトリを必要とするものがあります。デフォルトではキャッシュディレクトリは、現在のユーザのホームディレクトリに置かれます。 Trac を Web サーバで動作させている場合、ホームディレクトリを持たない専用ユーザであることが多く (強く推奨します)、プラグインの起動が妨げられることがあります。キャッシュディレクトリの場所を変更するには、環境変数 PYTHON_EGG_CACHE を設定してください。環境変数を設定する方法の詳細は使用しているサーバのドキュメントから参照してください。
    169361
    170362== 認証の構成 == #ConfiguringAuthentication
    171363
    172 認証のためのユーザアカウントを追加、削除、構成する方法は Trac を起動する方法により異なります。基本的な手順は TracCgi ページの [wiki:TracCgi#AddingAuthentication "認証を追加する"] セクションで説明されていますが、各フロントエンドのための認証をセットアップする方法は、以下のいずれかを参照してください:
    173 
    174  * TracStandalone スタンドアロンサーバ `tracd` を使用する場合
    175  * TracCgi CGI か FastCGI を使用する場合
    176  * TracModPython mod_python を使用する場合
    177 
    178 == SVN のチェンジセットを Trac のチケットに自動リンクする方法 == #AutomaticreferencetotheSVNchangesetsinTractickets
    179 
    180 ファイルをリポジトリにコミットした時に、チェンジセットへのリンクをチケットのコメントに自動で追加するように SVN を設定することができます。コミットメッセージには以下に示すいずれかの書式が含まれていなければなりません:
    181  * '''Refs !#123''' - このチェンジセットへのリンクをチケット !#123 に追加します
    182  * '''Fixes !#123''' - このチェンジセットへのリンクをチケット !#123 に追加し、チケットを ''fixed'' でクローズします。
    183 
    184 SVN リポジトリの ''post-commit'' hook を編集し、 Trac 配布物に含まれる ''trac-post-commit-hook'' が実行されるようにしてください。
    185 
    186 ''post-commit'' hook を編集するときは、まず SVN リポジトリ内の hooks フォルダに移動し、 ''post-commit'' 用のテンプレートファイルを rename してファイルを作成します:
    187 
    188 {{{
    189 $ cd /path/to/svn/repository/hooks
    190 $ mv post-commit.tmpl post-commit
    191 $ chmod 755 post-commit
    192 }}}
    193 
    194 続いて、ファイルをテキストエディタで開き、以下の行を追加します。パスは編集中の SVN リポジトリに接続している Trac environment のパス、および ''trac-post-commit-hook'' スクリプトのパスで置き換えてください:
    195 
    196 {{{
    197 REPOS="$1"
    198 REV="$2"
    199 TRAC_ENV="/path/to/your/trac/project"
    200 
    201 /usr/bin/python /usr/local/bin/trac-post-commit-hook -p "$TRAC_ENV" -r "$REV"
    202 }}}
    203 
    204 もちろん ''trac-post-commit-hook'' は上記のパスに存在し、 SVN を実行しているユーザの権限で実行できる必要があります。このスクリプトは Trac 配布物中では contrib フォルダに配置されています。最新のバージョンは [http://trac.edgewall.org/browser/trunk/contrib/trac-post-commit-hook trunk/contrib/trac-post-commit-hook] からダウンロードすることができます。
    205 
    206 
    207 == プラットフォーム固有のインストール方法 == #Platform-specificsinstallations
    208 
    209  * [http://trac.edgewall.org/wiki/TracInstallPlatforms TracInstallPlatforms] を参照してください。
    210  
    211 
    212 == Tracを使用する == #UsingTrac
    213 
    214 一度 Trac サイトを稼働させれば、 Subversion のリポジトリをブラウズする、チケットを作成する、タイムラインを見るなどが可能になるはずです。
    215 
    216 anonymous (ログインしていない) でアクセスするユーザは、デフォルトでほとんどの機能を使用することができますが、すべての機能を使用できるわけではないことに留意してください。すべての機能を使用するためには認証を構成して、認証されたユーザに対し [wiki:TracPermissions アクセス許可] を与える必要があるでしょう。
     364Trac は HTTP 認証を使用します。`.../login` の URL ("ログイン"(英語版では "login") ボタンの仮想パス) がリクエストされた際に、認証を要求するように Web サーバを設定する必要があります。Trac は認証情報を得た後自動的に REMOTE_USER 変数を獲得します。そのため、すべてのユーザの管理は Web サーバ の設定で行います。設定方法等の詳細な情報は、利用している Web サーバのドキュメントを参照してください。
     365
     366認証のためのユーザアカウントを追加、削除、設定する方法は Trac を起動する方法により異なります。
     367
     368以下に記すセクションを適宜参照してください:
     369 * スタンドアロンサーバ `tracd` を使用する場合は TracStandalone#UsingAuthentication
     370 * Apache Web サーバ と `mod_wsgi` に代表される `mod_python` や `mod_fcgi`, `mod_fastcgi` といったフロントエンドを使用する場合は [wiki:TracModWSGI#ConfiguringAuthentication TracModWSGI#ConfiguringAuthentication]
     371 * Apache 以外の FCGI をサポートしている Web サーバ (Cherokee, Lighttpd, !LiteSpeed, nginx) を使用する場合 TracFastCgi
     372
     373== admin ユーザへの管理者権限の付与 == #Grantingadminrightstotheadminuser
     374admin ユーザに管理者権限を付与します:
     375{{{
     376$ trac-admin /path/to/myproject permission add admin TRAC_ADMIN
     377}}}
     378このユーザは Trac プロジェクトに管理者としてアクセスするため、メニュー内に "管理"(英語版では "Admin") が表示されます。
     379
     380== インストールを終えて == #Finishingtheinstall
     381
     382=== SVN のチェンジセットを Trac のチケットに自動リンクする方法 === #AutomaticreferencetotheSVNchangesetsinTractickets
     383
     384変更をリポジトリにコミットした時に、チェンジセットへのリンクをチケットのコメントに自動で追加するように SVN を設定することができます。コミットメッセージには以下に示すいずれかの書式が含まれていなければなりません:
     385 * '''`Refs #123`''' - このチェンジセットへのリンクをチケット `#123` に追加します
     386 * '''`Fixes #123`''' - このチェンジセットへのリンクをチケット `#123` に追加し、チケットを ''fixed'' でクローズします。
     387
     388この機能を使用するためには post-commit フックを [wiki:TracRepositoryAdmin#ExplicitSync TracRepositoryAdmin] に記載したリポジトリにインストールし、  commit updater コンポーネントを有効にせねばなりません。コンポーネントの有効化は、 [wiki:TracIni#components-section trac.ini] ファイルの `[components]` セクションに下記記述を追加するか、 "プラグイン" (英語版では "Plugins") 管理パネルから設定します。
     389{{{
     390tracopt.ticket.commit_updater.* = enabled
     391}}}
     392詳細な情報は "プラグイン" 管理パネルの `CommitTicketUpdater` コンポーネントにあるドキュメントを参照してください。
     393
     394=== Trac を使用する === #UsingTrac
     395
     396一度 Trac サイトを稼働させれば、チケットを作成したり、タイムラインを見たり、 (設定されていれば) バージョン管理のリポジトリを閲覧したりできるはずです。
     397
     398//anonymous// (ログインしていない) でアクセスするユーザは、デフォルトではほとんど機能を使用することができません。特に、リソースに対して読み取りのみのアクセスになります。すべての機能を使用できるわけではないことに留意してください。すべての機能を使用するためには認証を構成して、認証されたユーザに対し [wiki:TracPermissions アクセス許可] を与える必要があります。
    217399
    218400'' Enjoy! ''
     
    221403
    222404----
    223 See also:  [http://trac.edgewall.org/wiki/TracInstallPlatforms TracInstallPlatforms], TracGuide, TracCgi, TracFastCgi, TracModPython, [wiki:TracModWSGI], TracUpgrade, TracPermissions
     405See also: [trac:TracInstallPlatforms TracInstallPlatforms], TracGuide, TracUpgrade, TracPermissions