您的位置:首页 > 其它

Gerrit审核服务器搭建简易教程(Ubuntu 12.10)

2014-03-25 18:09 204 查看
本文将详细记录如何在一个全新的Ubuntu系统中安装及配置Gerrit服务器的相关详细步骤。

1.安装Ubuntu12.xx(本人使用的是12.10,其他版本未测试)

2.配置java环境

下载jdk-6u34-linux-x64.bin(百度google),终端中执行安装(如没有权限,则执行 chmod a+x jdk-6u34-linux-x64.bin)

$: ./jdk-6u34-linux-x64.bin

安装会自动执行。安装完后,配置相关环境变量

$: vim ~/.bashrc

添加如下环境变量:(username为您的用户名)

JAVA_HOME=/home/username/jdk1.6.0_34

export JRE_HOME=$JAVA_HOME/jre

export CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH

export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

$: source ~/.bashrc

验证是否配置成功:

$: java -version

$: javac

如果以上终端命令没有返回错误,且有正常的版本信息及help信息,则证明JAVA环境配置成功,可以继续。如有错误,请自行百度google。

3.配置Gerrit.xxx.war

打开终端,到达gerrit.xxx.war所在目录,执行:

$: java -jar gerrit.xxx.war init -d review_site

Create '/home/username/review_site' [Y/n]?

...

基本就是一路回车下去,默认的配置就好,需要说的一点就是验证方式OPENID,OPENID可以采用google及yahoo邮箱登录,但是某些时候由于GFW的原因,这些可能不好用,所以就可以选择http(推荐)。 管理的数据库类型也因人而异,喜欢什么就用什么,默认为H2.

配置完成后,会自动调用gerrit.sh脚本开始gerrit服务,且会自动打开浏览器,这个时候一定是失败的,因为还没有配置apache2.

在配置apache2之前需要对gerrit的配置文件进行小小的修改,该文件为review_site/etc/gerrit.config

将字段[gerrit]下的canonicalWebUrl改为https://127.0.0.1:8081/

将字段[httpd]下的listenUrl改为 proxy-https://127.0.0.1:8081/

保存即可。

4.配置apache2

终端执行:

$: sudo apt-get install apache2

会进行安装,少许等待即可。另,本人用的是163的镜像软件源,感觉速度还是很不错的。

apache2在Ubuntu上安装完后是没有httpd.conf这个配置文件的,去/etc/apache2/下看一看究竟

创建httpd.conf文件(当然,需要root权限的),录入以下内容:

<VirtualHost *>

ServerName localhost

ProxyRequests Off

ProxyVia Off

ProxyPreserveHost On

<Proxy *>

Order deny,allow

Allow from all

</Proxy>

<Location /login/>

AuthType Basic

AuthName "Gerrit Code Review"

AuthBasicProvider file

AuthUserFile /home/username/review_site/etc/passwords

Require valid-user

</Location>

ProxyPass / http://127.0.0.1:8081/
</VirtualHost>

这个配置文件的意思是,当访问任意(*)时,进行代理,代理到/login/目录,并根据AuthUserFile请求用户名及密码,最终代理为http://127.0.0.1:8081/

这里有两个重点需要说一下:

a.关于review_site/etc/passwords

打开终端,进入review_site/etc目录下,执行:

$: touch passwords

$: htpasswd passwords gerrit

会请求你输入此用户(gerrit)的密码,确认无误后将相关信息写入passwords文件中。这个用户名及密码就是你稍后访问本地搭建的gerrit服务器所需要的。

b.ProxyPass / http://127.0.0.1:8081/
自此应与gerrit.config中字段[httpd]的配置对应相同,必须。

配置完后,保存该文件。

别高兴的太早,还没有完,现在这个配置文件只是写玩了而已,并没有生效。打开apache2.conf一看究竟吧。

你会发现apache2.conf这个文件通过Include来引用其他配置文件,但是并没有httpd.conf,仿照其他Include将httpd.conf也引用进去。

Include httpd.conf

保存,退出。

no,还没有完。

如果现在就着急重启apache2服务的话会发现出现proxy相关错误。是因为apache2的proxy模块还没有开启,通过查看apache2.conf也能够发现,mods-enable文件夹下的被引用了,但是在这里并没有发现proxy相关模块,在mods-available中却有。通过ls -l发现enable下边的功能都是link过来的,ok,也link过来吧。

通过ln -s 命令将proxy.conf proxy.load proxy_http.load从available中link到enable中即可。

大功告成,执行:

$: sudo /etc/init.d/apache2 restart

重启apache2服务。

现在打开服务器,登录127.0.0.1出现gerrit界面。

---End---

PS:容易出现的错误

1.未修改apache2.conf引用,导致httpd.conf未生效

2.httpd.conf中VirtualHost字段后将*写成与127.0.0.1:8081相同,这里的意思是输入,后边的才是代理“到”的端口。

转自: http://www.linuxidc.com/Linux/2013-02/79999p2.htm
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: