1、准备安装环境
安装JDK
下载jdk的tar包,解压缩,并修改/etc/profile,配置环境变量,这里不再说明
安装git
gerrit需要git环境,直接用yum安装
#yum -y install git
安装httpd
httpd主要作为反向代理使用,并设置账号密码访问
#yum -y install httpd
创建gerrit安装目录
#mkdir /home/gerrit2
2、下载Gerrit安装包
下载Gerrit的war包,通常包名为gerrit-xxx.war,xxx为版本号
地址:http://gerrit-releases.storage.googleapis.com/index.html
我下载的版本为gerrit-2.12.2.war
3、安装Gerrit
进入到gerrit-2.12.2.war文件所在目录,执行以下命令进行交互式安装
#java -jar gerrit-2.12.2.war init -d /home/gerrit2/gerrit
这里省略安装过程,基本上一路回车,保持默认即可。安装过程中的配置都可以通过编辑安装后生成的配置文件来修改。该文件路径为/home/gerrit2/gerrit/etc/gerrit.config
注意:
1、gerrit可以将数据保存到mysql或其他的数据中,如果你需要使用mysql,则需要安装gerrit之前安装mysql,我这里直接使用默认的数据库类型 H2。如果你需要使用其他类型数据库,可以参考下面这个链接:
https://gerrit-documentation.storage.googleapis.com/Documentation/2.12.2/install.html
2、如果gerrit需要结合jenkins做CI持续构建的话,在交互式安装过程中需要安装Verified label,默认是不安装的:Install Verified label [y/N]? y 这里选择y,安装Verified label。
修改配置文件:
#vim /home/gerrit2/gerrit/etc/gerrit.config
[gerrit] basePath = git canonicalWebUrl = http://172.16.206.133:8081 [database] type = h2 database = /home/gerrit2/gerrit/db/ReviewDB [index] type = LUCENE [auth] type = HTTP # logoutUrl = 172.16.206.133:8080 [receive] enableSignedPush = false [sendemail] smtpServer = smtp.exmail.qq.com smtpServerPort = 465 smtpEncryption = SSL smtpUser = 你的邮箱账号 smtpPass = 你的邮箱密码 form = 你的邮箱账号 [container] user = root javaHome = /usr/local/jdk1.8.0_66/jre [sshd] listenAddress = *:29418 [httpd] listenUrl = http://*:8081/ [cache] directory = cache
创建密码认证文件,并创建用户admin
#cd /home/gerrit2/gerrit/etc/ [root@localhost etc]# htpasswd -c -m passwords admin New password: Re-type new password: Adding password for user admin
4、配置httpd方向代理
编辑httpd.conf文件,追加以下内容
#vim /etc/httpd/conf/httpd.conf
Listen 8080 <VirtualHost *:8080> 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/gerrit2/gerrit/etc/passwords Require valid-user </Location> AllowEncodedSlashes On ProxyPass / http://127.0.0.1:8081/ nocanon ###这里端口为8081,与gerrit.config中配置的一样端口一样 ProxyPa***everse / http://127.0.0.1:8081/ </VirtualHost>
启动httpd服务
#service httpd start
如果使用nginx反向代理,则使用如下配置:
server { listen *:8080; server_name 10.10.10.206; } location /login/ { auth_basic "Gerrit Code Review"; auth_basic_user_file /home/gerrit2/gerrit/etc/passwords; proxy_pass http://127.0.0.1:8081; } }
5、启动或者重启gerrit
初始化安装gerrit时,会自动启动gerrit,所以我们修改完配置后,需要重启gerrit
#/home/gerrit2/gerrit/bin/gerrit start | restart
6、登录gerrit
在浏览器输入http://172.16.206.133:8080 出现gerrit的登录窗口
将Gerrit服务器设置开机自启动(可选操作)
Gerrit安装完成后,会生成服务启动脚本,路径为 $GERRIT_SITE/bin/gerrit.sh, 如果需要将Gerrit服务设置为开机自启动,可以按以下操作进行
将脚本link到/etc/init.d目录下
ln -snf /home/gerrit2/gerrit/bin/gerrit.sh /etc/init.d/gerrit
测试脚本是否正常:
/etc/init.d/gerritd status
** ERROR: GERRIT_SITE not set
修改脚本,设置$GERRIT_SITE路径
添加开机启动:
chkconfig --add gerrit
chkconfig gerrit on
再次测试脚本
转载于:https://blog.51cto.com/zengestudy/1771575