Trac的安装设置:修订间差异

来自Ubuntu中文
跳到导航跳到搜索
 
第21行: 第21行:
<source lang="text">sudo aptitude install trac-git</source>  
<source lang="text">sudo aptitude install trac-git</source>  


本文以subversion为例,介绍Trac的安装过程。
本文以subversion为例,介绍关于Trac的安装过程。


== Trac设置<br>  ==
== Trac设置<br>  ==

2015年12月20日 (日) 20:36的最新版本

Trac简介

Trac是Edgewall公司推出的网页界面专案管理软件,尤其擅长软件BUG跟踪方面。

Trac使用Python编程语言开发。在2005年中以前,Trac以GPL发行;直到 0.9 版开始使用修改过的BSD许可证发布。基本上都是属于自由软件的许可证。该软件集成了增强的Wiki功能和版本控制功能,并可通过插件扩展其功能。

由于其插件众多、功能全面,甚至可以与很多商业的CMS系统媲美,安装也不复杂,因此应用也日益广泛。它的ticket管理及工作流插件(http://trac-hacks.org/) 使得它也可以很方便地进行简单的业务协作及流程控制。


Trac安装

在Ubuntu下安装Trac十分简单,只需要输入下列命令即可:

<source lang="text">sudo apt-get install trac</source>
这样的话,Ubuntu会自动下载安装trac、apache、subversion等必要的软件(建议先行安装apach2、subversion),如果需要trac支持BZR,则还需要用下列命令安装BZR插件:

<source lang="text">sudo aptitude install trac-bzr</source>

同样的,如果要其支持GIT,则需要用下列使用安装GIT插件:

<source lang="text">sudo aptitude install trac-git</source>

本文以subversion为例,介绍关于Trac的安装过程。

Trac设置

配置Subversion版本库

Subversion 文件仓库可以放在任意位置,其中有两个最常用的位置分别是:/usr/local/svn 和 /home/svn。为了在下面的描述中简单明了,假设您的 Subversion 文件仓库放在 /home/svn/repo,并且项目名称为“trac”。

设置访问Subversion版本库的用户和用户组

设置Subversion版本库的访问权限也有很多方法,通常的做法是,创建一个名为“Subversion”的组,并将该组拥有访问Subversion版本库所在的目录的权限,同时将需要访问Subversion版本库的用户加入到这个组中(在这里添加的是自己的本地用户和Apache2用户):

<source lang="text">sudo groupadd subversion sudo usermod -G subversion -a firehare sudo usermod -G subversion -a www-data</source>

创建Subversion版本库并设置访问权限

创建Subversion版本库目录十分简单,只需要输入下列命令即可:

<source lang="text">sudo mkdir -p /home/svn/repo sudo chown -R root:subversion /home/svn/repo sudo chmod -R g+rws /home/svn/repo sudo svnadmin create /home/svn/repo</source>

配置PostgreSQL数据库

安装并启动PostgreSQL数据库

安装PostgreSQL数据库很简单,只需要:

<source lang="text">sudo apt-get install postgresql</source>

为了让trac能访问PostgreSQL,则需要安装python-psycopg2模块:

<source lang="text">sudo apt-get install python-psycopg2</source>

启动PostgreSQL服务器daemon(命令中的版本号可能不同):

<source lang="text">sudo /etc/init.d/postgresql-8.3 start</source>

添加PostgreSQL用户和数据库

添加PostgreSQL用户和数据库也很简单,只需要输入下列命令:

<source lang="text">sudo -u postgres sh (切换到postgres用户) createuser -A -D -P firehare (创建firehare用户,并提示输入密码,请输入123456以便和下文对应) Shall the new role be allowed to create more new roles? (y/n) y createdb -O firehare trac (创建trac数据库) exit (退出postgres用户,回到正常用户提示行)</source>

添加MYSQL用户和数据库

要支持MYSQL要先安装python-mysqldb 只需输入下列命令: sudo apt-get install python-mysqldb

创建配置Trac环境

Trac用目录和数据库来储存项目信息, 叫做”环境“。一个新的Trac环境是通过使用trac-admin创建出来的,同Subversion一样,Trac环境可以放至在任意位置,由于Trac是个Web应用,是通过Apache来访问的,所以通常将其设在/var/www目录中。具体命令及设置如下:

<source lang="text">cd /var/www sudo mkdir trac sudo chown -R www-data:www-data trac sudo -u www-data trac-admin trac initenv Project Name [My Project]> cmet (在这里输入你的项目名称) Database connection string [sqlite:db/trac.db]>postgres://firehare:123456@localhost/trac (输入PostgreSQL数据库的位置) Repository type [svn]> Path to repository [/path/to/repos]> /home/svn/repo (在这里输入你的项目对应的Subversion地址,注意Trac默认情况下只能访问本机的Subversion仓库,在上面填写地址时不能加"file://"前缀。) Templates directory [/usr/share/trac/templates]>/usr/share/pyshared/trac/templates</source>

配置Apache

创建Trac环境后,还需要在Apache2中进行相应的配置才能正常使用。配置Trac有两种方式:做为CGI(CGI、WSGI、FCGI)以及使用mod-python。在这里,我们使用apache2-mod-python方式来配置Apache2服务器:

<source lang="text">sudo apt-get install libapache2-mod-python libapache2-mod-python-doc sudo a2enmod python</source>

然后配置虚拟主机站点,当然如果没有虚拟主机的话,也可以将之放在/etc/apache2/sites-available/default文件中,在这里我们还是新建一个虚拟主机:

<source lang="text">sudo vi /etc/apache2/site-available/trac

<VirtualHost 10.10.3.29>

   ServerName trac.firehare.name
   ServerAdmin [email protected]
   DocumentRoot /var/www/myproject
   <Location />
       SetHandler mod_python
       PythonInterpreter main_interpreter
       PythonHandler trac.web.modpython_frontend
       PythonOption TracEnv /var/www/trac/
       PythonOption TracUriRoot /
       SetEnv PYTHON_EGG_CACHE /tmp
   </Location>
   <Location /login>
       AuthType Basic
       AuthName "CMET_WZU Trac Server"
       AuthUserFile /var/www/trac/.htpasswd
       Require valid-user
   </Location>
   ErrorLog "/var/log/apache2/trac_errors.log"
   CustomLog "/var/log/apache2/trac_accesses.log" common   

</VirtualHost></source>

设置Trac的访问权限

<source lang="text">sudo htpasswd -c /var/www/trac/.htpasswd firehare</source>

将该虚拟主机激活:

<source lang="text">sudo a2ensite trac sudo /etc/init.d/apache2 restart</source>

由于使用了域名,则需要在DNS(域名)服务器上将trac.firehare.name指向本机即可,如果没有DNS服务器,又想测试一个效果,可以在/etc/hosts文档中加入以下配置:

<source lang="text">127.0.0.1 trac.firehare.name</source>

测试Trac

接下来就可以通过在浏览器地址栏中输入 http://trac.firehare.name (这个网址由您的虚拟主机名决定)来访问Trac了,