Ubuntu 12.04 64位安装Redmine+Git+ReviewBoard

首先介绍下这三样东西

Redmine是用Ruby开发的基于web的项目管理软件,是用ROR框架开发的一套跨平台项目管理系统,据说是源于Basecamp的ror版而来,支持多种数据库,有不少自己独特的功能,例如提供wiki、新闻台等,还可以集成其他版本管理系统和BUG跟踪系统,例如Perforce、SVN、CVS、TD等等。这种 Web 形式的项目管理系统通过“项目(Project)”的形式把成员、任务(问题)、文档、讨论以及各种形式的资源组织在一起,大家参与更新任务、文档等内容来推动项目的进度,同时系统利用时间线索和各种动态的报表形式来自动给成员汇报项目进度。

ReviewBoard作为一个开源的代码复查工具,已经受到越来越多的开发人员喜爱。

Git是分布式版本控制工具。

以上三个据说是被称为团队协作开发中的三件套

废话不多少,进入配置步骤,整个配置过程中遇到了很多问题,由于时间跨度有点大,中间遇到的问题可能会遗漏。

最简化的Ubuntu 10.04下Redmine部署方法 http://www.linuxidc.com/Linux/2010-07/27076.htm

Ubuntu 10.04默认安装Redmine注意事项 http://www.linuxidc.com/Linux/2010-07/27075.htm

CentOS 5 下Redmine的安装及配置 http://www.linuxidc.com/Linux/2009-12/23311.htm

Ubuntu 9.10下搭建基于PostgreSQL的Redmine http://www.linuxidc.com/Linux/2009-11/22697.htm

Ubuntu中安装开源项目管理软件Redmine http://www.linuxidc.com/Linux/2008-03/11819.htm

如何将Turnkey Redmine 虚拟机从Redmine 1.0.5 升级到1.2 http://www.linuxidc.com/Linux/2011-09/42882.htm

CentOS5下进行Redmine环境搭建,邮件服务配置,LDAP配置 http://www.linuxidc.com/Linux/2013-04/83619.htm

第一步:从git开始配置,由于它的配置最简单,这里直接复制前一篇博客的配置

安装python setuptools

sudo apt-get install python-setuptools

下载gitosis

git clone https://github.com/tv42/gitosis.git

进入gitosis目录

cd gitosis

安装

python setup.py install

创建git账号

sudo useradd -c 'git version manage' -m -d /home/git -s bin/bash  git

将客户端生产的秘钥上传到服务器目录/home/git/id_rsa.pub,生成方法见生成秘钥 http://www.linuxidc.com/Linux/2015-01/111847.htm

初始化git

sudo -H -u git gitosis-init < /home/git/id_rsa.pub

显示如下信息则成功

#Initialized empty Git repository in /home/git/repositories/gitosis-admin.git/
#Reinitialized existing Git repository in /home/git/repositories/gitosis-admin.git/

修改post-update权限

sudo chmod 755 /home/git/repositories/gitosis-admin.git/hooks/post-update

客户端克隆仓库进行配置

git clone git@主机IP:gitosis-admin.git

克隆后keydir目录下存放的是公钥,gitosis.conf是配置文件 

打开配置文件,增加下面的内容,并将另一台机器的公钥recwert@linuxidc.com.pub置于公钥目录下

[group linuxidc]
writable = linuxidc
members = victor@linuxidc.com recwert@linuxidc.cc

将修改commit

git add .
git commit -m 'add some key'
git push

使用初始化的客户机victor@linuxidc.com提交linuxidc仓库,代码如下

mkdir linuxidc  
cd webca  
git init  
touch README.md 
git add README.md 
git commit -m "init linuxidc"  
git remote add origin git@主机IP:linuxidc.git  
git push origin master

push后服务器就会多出一个linuxidc.git目录/home/git/repositories/linuxidc.git

修改该文件夹权限为777,因为后面装的redmine需要这个文件夹是777的权限

更多详情见请继续阅读下一页的精彩内容: http://www.linuxidc.com/Linux/2015-01/111846p2.htm

第二步,安装Redmine

安装依赖软件

sudo apt-get install apache2 libapache2-mod-passenger mysql-server redmine redmine-mysql

安装过程中会进行配置,按照提示一步一步配置下去即可,涉及到的配置是mysql的账号密码,redmine的账号密码等信息,安装完后的redmine在/var/www/redmine目录 

配置apache

/etc/apache2/conf.d 目录下,建立文件:

sudo vi redmine.conf
RailsEnv production
RailsBaseURI /redmine

建立链接

sudo ln -s /usr/share/redmine/public /var/www/redmine

重启apache

sudo service apache2 restart

访问redmine

 

http://主机IP/redmine

账号admin,密码admin

这样差不多redmine就安装完了,如果集成git见前一篇博客

第三步,安装reveiewboard,这一步是如此的艰难。。。耗费了太多时间,原因是配置文件的问题,该过程直接参考官方地址就好了

redmine官方配置方法

安装python setuptools,前面安装过了其实。。

apt-get install python-setuptools

升级,这一步可能不用,而且这一步做了之后后面会出一个小问题,就是easy_install系统中会存在两个,导致reviewboard不能安装,解决方法见后面

easy_install -U setuptools

安装python-dev

apt-get install python-dev

安装memcached

apt-get install memcached

安装python_memcached

easy_install python-memcached

这一步可能会报一个这样的错误 entry point ('console_scripts','easy_install') not found

原因是系统中可能存在两个easy_install,使用下面命令查看

which -a easy_install

那么我们使用其中的一个就好了,即带上全路径,后面所有用到的easy_install都要带上路径

/usr/bin/easy_install python-memcached

安装patch

apt-get install patch

安装reviewboard

/usr/bin/easy_install ReviewBoard

这一步可能会出错。。。原因嘛,你懂的,需要从google code上下东西。。然后的然后,存在一面巨大的墙。。解决办法么,最简单的就是修改hosts,github上搜索google hosts即可找到解决方法

安装python-mysql

/usr/bin/easy_install mysql-python

这一步可能会报错,内容如下

sh: mysql_config: not found
Traceback (most recent call last):
  File "setup.py", line 15, in <module>
    metadata, options = get_config()
  File "/home/zhxia/apps/source/MySQL-python-1.2.3/setup_posix.py", line 43, in get_config
    libs = mysql_config("libs_r")
  File "/home/zhxia/apps/source/MySQL-python-1.2.3/setup_posix.py", line 24, in mysql_config
    raise EnvironmentError("%s not found" % (mysql_config.path,))
EnvironmentError: mysql_config not found

解决方法见下面这条命令

sudo apt-get install libmysqlclient-dev

安装cvs等等杂七杂八的东西

apt-get install cvs

apt-get install cvs

apt-get install git-core

/usr/bin/easy_install mercurial

/usr/bin/easy_install P4PythonInstaller

apt-get install subversion python-svn

然后开始创建站点,在这之前需要修改一些配置

修改mysql编码,文件在/etc/mysql/my.cnf,编辑它加入下面的内容

[client]
default-character-set=utf8

[mysqld]
character-set-server=utf8

创建数据库和数据库用户

mysql -u root -p
mysql> CREATE DATABASE reviewboard CHARACTER SET utf8;
mysql> CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'mypassword';
mysql> GRANT ALL PRIVILEGES ON reviewboard.* to 'myuser'@'localhost';

安装站点

rb-site install /var/www/reviewboard

下面是配置过程中的一些选项 

尤其要注意Root Path不能使用默认的,不然apache会傻逼掉

- Domain Name: 主机IP
- Root Path [/]: /reviewboard/ 这个一定不要使用默认值,具体原因见它上面的提示,这里想不起来了,这个装了这么久没装上有一部分原因是这个导致的
- Media URL [media/]: media/ 默认即可
- Database Type: mysql
- Database Name [reviewboard]: reviewboard (就是上面建表时候的表名)
- Database Server [localhost]: 默认即可
- Database Username: reviewboard 你创建的数据库用户名
- Database Password: reviewboard 你创建的数据库用户名密码
- Cache Type: memcached  默认
- Memcache Server [localhost:11211/]: localhost:11211/ 默认
- Web Server: apache
- Python Loader: wsgi
- Username [admin]: admin 默认
- Password: admin(这个密码随便设,但也要记住,后面页面登录的时候需要用到)
- E-Mail Address: yours@email.com.cn

修改权限

chown -R www-data /var/www/reviewboard/htdocs/media/uploaded
chown -R www-data /var/www/reviewboard/data

拷贝文件

cd /etc/apache2/sites-available
cp /var/www/reviewboard/conf/apache-wsgi.conf /etc/apache2/conf.d/

进入/etc/apache2/conf.d/目录,编辑apache-wsgi.conf文件

将第一行<VirtualHost *:80>注释掉,最后一行</VirtualHost>注释掉,这一步及其重要,否则其他目录将无法访问到,只能访问到reviewboard
重启apache

sudo service apache2 restart

到这里为止,访问http://主机IP/reviewboard如果出现主页,那么你成功了一半,再访问你建在apache上的其他站点redmine,如果正常访问,那么你成功了

最后,多余的一步,建个phpmyadmin在上面

安装php

sudo apt-get install php5 libapache2-mod-php5

安装phpmyadmin

sudo apt-getinstall phpmyadmin

建立链接

sudo ln -s /usr/share/phpmyadmin /var/www

访问http://主机IP/phpmyadmin看能否正常访问,可能会提示缺少什么东西

比如,但缺少的不一定是下面这个文件,总之解决方法跟下面的类似

错误提示: 缺少 mcrypt 扩展,请检查 php 配置

进入 /etc/php5/apache2  修改其下的php.ini(eg:sudo vim php.ini),找到如下字段并添加下面的extension=php_mcrypt.so
;;;;;;;;;;;;;;;;;;;;;;
; Dynamic Extensions ;
;;;;;;;;;;;;;;;;;;;;;;
;
extension=php_mcrypt.so

重启apache

sudo service apache2 restart

至于reviewboard怎么集成git,方法自行查找!

最新Apache+SVN+ReviewBoard实现在线代码评审  http://www.linuxidc.com/Linux/2014-07/104904.htm

Ubuntu下ReviewBoard安装全过程 http://www.linuxidc.com/Linux/2014-07/104089.htm

在Ubuntu上安装ReviewBoard http://www.linuxidc.com/Linux/2014-05/101222.htm

CentOS系统上搭建Reviewboard http://www.linuxidc.com/Linux/2014-04/100220.htm

在Ubuntu Server上安装ReviewBoard http://www.linuxidc.com/Linux/2009-06/20420.htm

更多Ubuntu相关信息见Ubuntu 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=2

本文永久更新链接地址http://www.linuxidc.com/Linux/2015-01/111846.htm

posted @ 2015-09-18 16:58  苍月代表我  阅读(293)  评论(0编辑  收藏  举报