一、环境准备

1.Java环境

gerrit依赖,用于安装gerrit环境。

下载:jdk-7u79-linux-x64.tar.gz http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html

安装:tar zxvf ./jdk-7u79-linux-x64.tar.gz -C /usr/local

配置:vim ~/.bashrc(针对当前用户) or vim /etc/profile(针对所有用户,推荐)

export JAVA_HOME=/usr/local/jdk1.8
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

验证java环境

java -version

2.git环境

gerrit依赖,用来操作git repository。

yum install git

  

3.gerrit环境

下载:Gerrit 2.12.4 https://www.gerritcodereview.com/download/gerrit-2.12.4.war

4.apache2环境

yum -y install httpd mod_ssl

  

5.gerrit管理帐号(可选,使用独立账号配置gerrit)

gerrit依赖,用来管理gerrit。

sudo adduser gerrit

sudo passwd gerrit

  

并将gerrit加入sudo权限

visudo

gerrit  ALL=(ALL:ALL) ALL

  

二、安装与配置gerrit

1.配置gerrit

默认安装:java -jar gerrit-2.12.4.war init --batch -d ~/review_site

  

更新配置文件:vim ~/review_site/etc/gerrit.config

[gerrit]
basePath = git #默认gerrit对应的git库
canonicalWebUrl = http://10.121.8.179:8081/ #gerrit web管理界面
[database]
type = h2 #h2数据库
database = db/ReviewDB #数据库路径
[index]
type = LUCENE
[auth]
type = HTTP #auth模式,默认为OPENID,配置为HTTP,需要apache配置反向代理
[receive]
enableSignedPush = false
[sendemail]
     enable=false #关闭邮件提醒
[container]
user = gerrit #linux user for gerrit
javaHome = /usr/local/jdk1.8/jre #java home
[sshd]
listenAddress = *:29418 #default gerrit port
[httpd]
listenUrl = http://*:8081/
[cache]
directory = cache
[http]
proxy = http://10.121.8.179:8080 #proxy server
proxyUsername = gerrit #proxy user & password
proxyPassword = 123456

  2.配置apache2反向代理

更新配置文件:sudo vim /etc/apache2/sites-enabled/gerrit-httpd.conf
<VirtualHost *:8080>
ServerName 10.121.8.179
ProxyRequests Off
ProxyVia Off
ProxyPreserveHost On
AllowEncodedSlashes On
RewriteEngine On
RewriteRule ^/(.*) http://10.121.8.179:8081/$1 [NE,P] <Proxy *>
Order deny,allow
Allow from all
</Proxy> <Location /login/>
AuthType Basic
AuthName "Gerrit Code Review"
Require valid-user
AuthBasicProvider file
AuthUserFile /etc/httpd/passwords
</Location> ProxyPass / http://10.121.8.179:8081/ </VirtualHost

  开启SSL、Proxy、Rewrite等模块:

[username@hostname apache2]$ vi conf/http.conf
# Open LoadModule
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule ssl_module modules/mod_ssl.so
LoadModule rewrite_module modules/mod_rewrite.so
# Gerrit config
Include conf/extra/gerrit-httpd.conf

  

其中apache2/conf/extra/gerrit-httpd.conf内容同上,apache2/sites-enabled/gerrit-httpd.conf。

3.配置gerrit账户密码

touch /etc/apache2/passwords

htpasswd -b /etc/apache2/passwords admin 123456(管理员)

htpasswd -b /etc/apache2/passwords gerrit1 123456(普通用户)

  

4.启动gerrit&启动apache2

/home/review_site/bin/gerrit.sh restart
systemctl restart httpd

  

5.访问gerrit 管理界面 http://10.121.8.179:8080/

第一次访问,需要输入第3步设置的admin及密码,该账户将作为gerrit管理员账户。进入后可设置FullName: GerritAdmin。

下载代码

git clone ssh admin@10.121.8.179:29418/demo-project

  上传代码

git push origin HEAD:refs/for/master

  

安装gerrit服务器的更多相关文章

  1. 如何搭建开源code review gerrit服务器

    搭建环境:Ubuntu 14.04 一.环境准备 1.Java环境 gerrit依赖,用于安装gerrit环境. 下载:jdk-7u79-linux-x64.tar.gz http://www.ora ...

  2. CentOS 7.2 安装Gerrit 2.14.6

    1.环境 本文使用VMWare虚拟机进行实验. 2核CPU,4GB内存,20GB硬盘,IP:192.168.159.131 CentOS 7.2最小安装(CentOS-7-x86_64-Minimal ...

  3. 搭建gerrit服务器(apache&nginx反向代理方式)

    这段时间,想搭建一个gerrit,用于代码托管,gerrit的搭建,网上有很多种教程,但是自己按照别人的教程逐步操作,一直出现诸多问题.最头痛的就是:Configuration Error Check ...

  4. CentOS安装SVN服务器

    Step1:安装svn服务器 $ yum install subversion Step2:创建SVN版本库目录 $ mkdir /workplace/svnrepos Step3:创建版本库 $ s ...

  5. CentOS安装gitLab服务器

    首先利用gitlab-install-el6.sh安装,比较简单: (出处:http://www.linuxidc.com/Linux/2013-06/85754.htm) 1:如果有条件,提供一台全 ...

  6. Linux下安装Tomcat服务器和部署Web应用

    一.上传Tomcat服务器

  7. 【BO】安装BO服务器时,oracle服务端安装ora-12514和12541的问题

    今天在安装BO服务器,oracle数据库时,出现了这样一个问题,描述如下: 首先安装oracle10g Server 32位版.安装ORCL数据库之后,使用10gServer下的NET MANAGER ...

  8. kali 安装FTP服务器-vsftpd

    参考文章:Ubuntu 14.04 FTP服务器--vsftpd的安装和配置 本文将会介绍在kali2.0上安装vsftpd,主要分成四块:更新源列表.安装和配置vsftpd服务器.使用ftp命令传输 ...

  9. 安装ftp 服务器

    安装ftp 服务器 #yum install vsftp 安装ftp 客户端 重启ftp服务器 sudo /etc/init.d/vsftpd restart /start /stop 进行ARM 和 ...

随机推荐

  1. .net mvc 几种跨域获取数据方案

    方案一: 在web.conflg配置文件system.webServer节点中添加以下节点配置 <!--允许 "所有网站" 跨域访问写法:--><httpProt ...

  2. vscode+flutter+win10搭建问题记录

    1.下载安装vscode.flutter sdk.安装vscode相关插件.android sdk,这些网上有教程,比如https://blog.csdn.net/SVNzK/article/deta ...

  3. Java I/O系统学习系列三:I/O流的典型使用方式

    尽管可以通过不同的方式组合IO流类,但我们可能也就只用到其中的几种组合.下面的例子可以作为典型的IO用法的基本参考.在这些示例中,异常处理都被简化为将异常传递给控制台,但是这只有在小型示例和工具中才适 ...

  4. awit的用法,等待执行结果

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. QT POST/GET HTTP操作

    工程文件 Qt += network 举例 Widget::Widget(QWidget *parent) : QWidget(parent), ui(new Ui::Widget) { ui-> ...

  6. CDA数据分析【数据收集】

    一.机器收集数据 机器收集数据会从不同角度对数据进行抓取和采集,与之前手动收集数据不同,机器收集数据不再是用小样本.特定样本来采集和分析整体数据,而是采用大样本或整体数据进行分析,这打破了原来的数据分 ...

  7. There is already an open DataReader associated with this Command which must be closed first

    通常出现在嵌套查询数据库(比如在一个qry的遍历时,又进行了数据库查询) 通过在连接字符串中允许MARS可以轻松解决这个问题. 将MultipleActiveResultSets = true添加到连 ...

  8. Linux C/C++编译过程中的各种not declared in this scope

    Linux C/C++编译时经常会"XXX was not declared in this scope" 原因可能是以下几种: 变量名或函数名写错了; 忘记定义了 没有成功链接到 ...

  9. Odoo treeView列表视图详解

    转载请注明原文地址:https://www.cnblogs.com/ygj0930/p/10826414.html TreeView:列表视图 1:<tree>标签的属性 [tree标签内 ...

  10. 【IntelliJ IDEA新手入门】IDEA如何快速搭建Java开发环境

    作为IntelliJ IDEA mac新手,IDEA如何快速搭建Java开发环境呢? 今天小编就给大家带来了IntelliJ IDEA mac使用教程,想知道IDEA如何快速搭建Java开发环境?那就 ...