共计 4273 个字符,预计需要花费 11 分钟才能阅读完成。
本文重点说 reviewboard 的安装
作用,在线代码评审工具。
Ubuntu 13.04 安装 LAMP\Vsftpd\Webmin\phpMyAdmin 服务及设置 http://www.linuxidc.com/Linux/2013-06/86250.htm
CentOS 5.9 下编译安装 LAMP(Apache 2.2.44+MySQL 5.6.10+PHP 5.4.12) http://www.linuxidc.com/Linux/2013-03/80333p3.htm
RedHat 5.4 下 Web 服务器架构之源码构建 LAMP 环境及应用 PHPWind http://www.linuxidc.com/Linux/2012-10/72484p2.htm
Ubuntu Server 12.04 安装 SVN 并迁移 Virtual SVN 数据 http://www.linuxidc.com/Linux/2013-05/84695.htm
Ubuntu Server 搭建 svn 服务以及迁移方法 http://www.linuxidc.com/Linux/2013-05/84693.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
—————————————————————————
mysql 安装
- yum –y install gcc gcc–c++ make cmake autoconf automake ncurses* bison* zlib* expat*
- openssl* apr* neon*
- yum –y install mysql–server
可以选择 yum 安装 mysql 或者编译安装 mysql
注,编译安装的 mysql,90% 运维会装在 /usr/local/mysql 下 如果默认安装在 /usr/local/mysql 下,等装好 ReviewBoard 生成站点的时候会选择支持使用的数据库的时候没有识别 mysql 只有 sqlite3,此时,如果你数据库不是 sqlite3,继续往下执行自动生成的站点访问将会出现 bad reqest 400 错误。对于编译安装的 mysql,解决办法如下 yum 安装的 mysql 命令将在 /usr/local/bin/ 下,不需要软连。
对于编译安装的 mysql,解决办法如下 做相应的软连接
- ln –s /usr/local/mysql/lib/libmysqlclient.so.18/usr/lib/libmysqlclient.so.18
- ln –s /usr/local/mysql/lib/libmysqlclient.so.18/usr/lib64/libmysqlclient.so.18
- ln –s /usr/local/mysql/bin/* /usr/local/bin/
mysql 安装此处不再介绍 编译也好,yum 也好,看需求及使用 mysql 的级别。
—————————————————————————-
Apache 和 SVN
- yum –y install httpd httpd–devel mod_dav_svn subversion subversion–devel
apache 安装好之后可直接启动
svn 的安装于配置,仓库的创建,用户的管理,权限的配置,网上文档一大堆。
—————————————————————————-
安装 reviewboard
reviewboard 是由 python 开发,
1,使用 python-setuptools 安装
- yum –y install python–setuptools
- easy_install –U setuptools,
2,安装 python 组件
- yum –y install python python–devel python版本要 2.6 以上才可以支持reviewboard
3、安装 patch
- yum –y install patch
4、安装 pysvn
- wget http://pysvn.barrys-emacs.org/source_kits/pysvn-1.7.6.tar.gz
- tar zxvf pysvn–1.7.6.tar.gz
- cd pysvn–1.7.6/Source
- python setup.py backport 验证与 python 的兼容
- python setup.py configure
make pysvn 的编译安装需要 subversion-devel 的支持,没有装 devel 报此处报错,yum 安装之后将解决。
- mkdir /usr/lib64/python2.6/site–packages/pysvn
- cp pysvn/__init__.py /usr/lib64/python2.6/site–packages/pysvn
- cp pysvn/_pysvn*.so /usr/lib64/python2.6/site–packages/pysvn
5、安装 mod_wsgi
- yum –y install mod_wsgi
mod_wsgi 是支持 webpy 的一个模块
6、安装 mencache
- yum –y install memcached
- easy_install python–memcached
reviewboard 需要 memcxched 的支持,之前没打开 11211 端口,访问很慢。
7、安装 Review Board
- easy_install ReviewBoard
# 如果安装过程中 Django 1.6.5 一直因为网络问题安装失败的话,可以手动下载安装 伟大的天朝已经屏蔽的 google,此处提供一个 openerdns 42.120.21.30 添加到 /etc/resolv.cof 里。成功的几率大大提高,以为此 dns 可以代理到 google,https://code.google.com/p/openerdns/
- wget https://pypi.python.org/packages/source/D/Django/Django-1.6.5.tar.gz#md5=e4c5b2d35ecb3807317713afa70a0c77
- cd Django–1.6.5
- python setup.py build
- python setup.py install
# 或者使用 pip 在线安装
- pip —default–timeout=2000 install Django==1.6.5
8、安装 mysql 组件
- easy_install mysql–python
创建 reviewboard 站点
创建 reviewboard 存放数据的数据库 reviewboard 并赋予权限和密码
- mysql> create database reviewboard default charset utf8 collate utf8_general_ci;
- mysql> grant all on reviewboard.* to ‘reviewboard’@‘localhost’ identified by‘reviewboard’;
- mysql> FLUSH PRIVILEGES;
创建 reviewboard 站点
- rb–site install /reviewboard
rb-site 命令是装 reviewboard 自动生成的
之后会有一系列类似安装向导的步骤,需要你做出选择,尽量选择默认值吧
- Domain= rb.XXX.com 自己随意,本地做个 hosts 绑定就行
- RootPath=回车
- DatabaseType= mysql
- DatabaseName= reviewboard
- Database server =回车
- Database username =‘reviewboard’
- Database password =‘reviewboard’
- MemcacheServer=回车
- Username[admin]: admin
- E–MailAddress=邮箱自己填
ok 之后需要修改下列文件的属主属组
- [root@localhost bin]# chown –R apache /reviewboard/htdocs/media/uploaded
- [root@localhost bin]# chown –R apache /reviewboard/htdocs/media/ext
- [root@localhost bin]# chown –R apache /reviewboard/htdocs/static/ext
- [root@localhost bin]# chown –R apache /reviewboard/data/
- cp /reviewboard/conf/apache–wsgi.conf 到 /etc/httpd/conf.d/
apache 为 yum 安装,编译安装
自己定位目录。80 端口被占用,我使用了 8081 修改了下端口,使用 80 端口将不用任何修改。
重启 apache,http://http://rb.xxx.com/ 就可以访问。
如果出现 400 错误,就是在创建 reviewboard 站点出现错误,站点没有生成好,之前就是没有显示 mysql 选择了 sqlite3,也 ok 了,访问就是显示 400 错误,以为是 apache-wsgi.conf 中
- WSGIPassAuthorizationOn
- WSGIScriptAlias“/”“/reviewboard/htdocs/reviewboard.wsgi/”
这两行的问题,写了个 html,试验了虚拟主机,注释这两行就 ok,打开就 400,查了半天的 mode_wsgi, 还是 400,最终又重新检查一遍,支持了 mysql,终于解决。
500 错误解决有可能是数据库的问题,重启数据库(慎重)或者 drop reviewboard 库重新创建,并重新生成 reviewboard 站点。