trac 的安装设置
Trac的安装设置
原网页:http://wiki.ubuntu.org.cn/Trac%E7%9A%84%E5%AE%89%E8%A3%85%E8%AE%BE%E7%BD%AE
出自Ubuntu中文
目录[隐藏] |
[编辑] Trac简介
Trac是Edgewall公司推出的网页界面专案管理软件,尤其擅长软件BUG跟踪方面。
Trac使用Python编程语言开发。在2005年中以前,Trac以GPL发行;直到 0.9 版开始使用修改过的BSD许可证发布。基本上都是属于自由软件的许可证。该软件集成了增强的Wiki功能和版本控制功能,并可通过插件扩展其功能。
由于其插件众多、功能全面,甚至可以与很多商业的CMS系统媲美,安装也不复杂,因此应用也日益广泛。它的ticket管理及工作流插件(http://trac-hacks.org/) 使得它也可以很方便地进行简单的业务协作及流程控制。
[编辑] Trac安装
在Ubuntu下安装Trac十分简单,只需要输入下列命令即可:
sudo apt-get install trac
这样的话,Ubuntu会自动下载安装trac、apache、subversion等必要的软件(建议先行安装apach2、subversion),如果需要trac支持BZR,则还需要用下列命令安装BZR插件:
sudo aptitude install trac-bzr
同样的,如果要其支持GIT,则需要用下列使用安装GIT插件:
sudo aptitude install trac-git
本文以subversion为例,介绍Trac的安装过程。
[编辑] Trac设置
[编辑] 配置Subversion版本库
Subversion 文件仓库可以放在任意位置,其中有两个最常用的位置分别是:/usr/local/svn 和 /home/svn。为了在下面的描述中简单明了,假设您的 Subversion 文件仓库放在 /home/svn/repo,并且项目名称为“trac”。
[编辑] 设置访问Subversion版本库的用户和用户组
设置Subversion版本库的访问权限也有很多方法,通常的做法是,创建一个名为“Subversion”的组,并将该组拥有访问Subversion版本库所在的目录的权限,同时将需要访问Subversion版本库的用户加入到这个组中(在这里添加的是自己的本地用户和Apache2用户):
sudo groupadd subversion
sudo usermod -G subversion -a firehare
sudo usermod -G subversion -a www-data
[编辑] 创建Subversion版本库并设置访问权限
创建Subversion版本库目录十分简单,只需要输入下列命令即可:
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
[编辑] 配置PostgreSQL数据库
[编辑] 安装并启动PostgreSQL数据库
安装PostgreSQL数据库很简单,只需要:
sudo apt-get install postgresql
为了让trac能访问PostgreSQL,则需要安装python-psycopg2模块:
sudo apt-get install python-psycopg2
启动PostgreSQL服务器daemon(命令中的版本号可能不同):
sudo /etc/init.d/postgresql-8.3 start
[编辑] 添加PostgreSQL用户和数据库
添加PostgreSQL用户和数据库也很简单,只需要输入下列命令:
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用户,回到正常用户提示行)
[编辑] 添加MYSQL用户和数据库
要支持MYSQL要先安装python-mysqldb 只需输入下列命令: sudo apt-get install python-mysqldb
[编辑] 创建配置Trac环境
Trac用目录和数据库来储存项目信息, 叫做”环境“。一个新的Trac环境是通过使用trac-admin创建出来的,同Subversion一样,Trac环境可以放至在任意位置,由于Trac是个Web应用,是通过Apache来访问的,所以通常将其设在/var/www目录中。具体命令及设置如下:
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
[编辑] 配置Apache
创建Trac环境后,还需要在Apache2中进行相应的配置才能正常使用。配置Trac有两种方式:做为CGI(CGI、WSGI、FCGI)以及使用mod-python。在这里,我们使用apache2-mod-python方式来配置Apache2服务器:
sudo apt-get install libapache2-mod-python libapache2-mod-python-doc
sudo a2enmod python
然后配置虚拟主机站点,当然如果没有虚拟主机的话,也可以将之放在/etc/apache2/sites-available/default文件中,在这里我们还是新建一个虚拟主机:
sudo vi /etc/apache2/site-available/trac
<VirtualHost 10.10.3.29>
ServerName trac.firehare.name
ServerAdmin ubuntu.firehare@gmail.com
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>
设置Trac的访问权限
sudo htpasswd -c /var/www/trac/.htpasswd firehare
将该虚拟主机激活:
sudo a2ensite trac
sudo /etc/init.d/apache2 restart
由于使用了域名,则需要在DNS(域名)服务器上将trac.firehare.name指向本机即可,如果没有DNS服务器,又想测试一个效果,可以在/etc/hosts文档中加入以下配置:
127.0.0.1 trac.firehare.name
[编辑] 测试Trac
接下来就可以通过在浏览器地址栏中输入 http://trac.firehare.name (这个网址由您的虚拟主机名决定)来访问Trac了,
trac 的安装设置的更多相关文章
- 多trac的安装和配置
其他相关网页: trac+svn: http://wenku.baidu.com/view/84389a81ec3a87c24028c43f.html apache(GCI):http://hi.ba ...
- hive安装--设置mysql为远端metastore
作业任务:安装Hive,有条件的同学可考虑用mysql作为元数据库安装(有一定难度,可以获得老师极度赞赏),安装完成后做简单SQL操作测试.将安装过程和最后测试成功的界面抓图提交 . 已有的当前虚拟机 ...
- Fiddler的安装设置
一.安装设置Fiddler2 下载完成后安装,安装完成后打开 如下图设置Fiddler 代理: 二.设置手机代理 快捷键win+r打开运行窗口à输入:cmdà确定 在界面上输入:ipconfig,查 ...
- PyCharm 2017 官网 下载 安装 设置 配置 (主题 字体 字号) 使用 入门 教程
一.安装 Python 3.6 首先,要安装好 Python 3.6.如果你还没有安装,可以参考咪博士之前的教程 Python 3.6.3 官网 下载 安装 测试 入门教程 (windows) 二.官 ...
- Ubuntu 18.04 Numix主题安装设置
Ubuntu 18.04 Numix主题安装设置 一.首先安装Numix主题 展现效果如下图 1.安装numix sudo add-apt-repository ppa:numix/ppa 2.安装主 ...
- [0412]SQL Server 2008 R2 安装 & 设置
SQL Server 2008 R2 安装 & 设置 Sql Server 安装 安装环境: Windows 10 1709 64位 安装文件: Sql Server 2008 R2 Sql ...
- ActiveReports 报表控件V12新特性 -- 可定制的安装设置
ActiveReports是一款专注于 .NET 平台的报表控件,全面满足 HTML5 / WinForms / ASP.NET / ASP.NET MVC / WPF 等平台下报表设计和开发工作需求 ...
- Jenkins Maven安装设置
Jenkins Maven安装设置 如果没有学习过 Maven 的朋友,可以先了解 Maven教程,然后再进一步学习本教程文章. 第1步:下载和设置Maven Maven的官方网站就是Apache M ...
- MinGW安装设置
From:http://www.cnblogs.com/killerlegend/p/3746504.html Author:KillerLegend Date:2014.5.22 不得不吐槽一下学校 ...
随机推荐
- git 克隆一个新仓库
1.登陆git网页版,点击右上角创建新项目 2.更改project path(如果需要),填写project name,其它选项默认. 3.到本地要创建存放项目的目录下,打开git命令框,输入git ...
- Servlet4.0 注解不生效解决
当我们创建好一个4.0的servlet 生成的注解大概是这样 name=xxxxx 默认的是不具有效果的 你可以有两种方式 1.去掉属性name,3.0就是这样子的 2.非要有name属性 请加上u ...
- VirtualBox虚拟机安装CentOS 7
新建虚拟机 因为比较简单,所以对于VirtualBox就不做过多介绍了,直接下载安装即可,安装好之后打开Oracle VM VirtualBox管理器,点击新建,选择Red Hat(根据windows ...
- 请教一下16aspx上的源代码要如何在自己的服务器上运行
很正常呀,,我下载的也有运行不成功的你要去他们16aspx论坛发帖子问这里很少有人回答你这样的问题
- window下Kafka最佳实践
Kafka的介绍和入门请看这里kafka入门:简介.使用场景.设计原理.主要配置及集群搭建(转) 当前文章从实践的角度为大家规避window下使用的坑. 1.要求: java 6+ 2.下载kafka ...
- tyvj——P1002 谁拿了最多奖学金
P1002 谁拿了最多奖学金 时间: 1000ms / 空间: 131072KiB / Java类名: Main 背景 NOIP2005复赛提高组第一题 描述 某校的惯例是在每学期的期末考试之后发 ...
- Xamarin XAML语言教程通过ProgressTo方法对进度条设置
Xamarin XAML语言教程通过ProgressTo方法对进度条设置 在ProgressBar中定义了一个ProgressTo方法,此方法也可以用来对进度条当前的进行进行设置,ProgressTo ...
- CV2
Education 2008-09 - 2012-07 Xian Peihua University English Junior CollegeTarget Jobs: Project Man ...
- 你也许还不知道const_cast,static_cast,dynamic_cast,reinterpret_cast的区别吧?
[QQ群: 189191838,对算法和C++感兴趣可以进来] 开篇立意: C++中各种转换令人眼花缭乱,看似差不多,实际差很多,而且在当今时间,做一个"差不多先生"其 ...
- 我也来说说js的事件机制
原文链接:http://www.w3cfuns.com/notes/17398/8062de2558ef495ce6cb7679f940ae5c.html 学js,不懂事件机制,基本可以说学了js,就 ...