1、建立專有帳戶
sudo adduser gerrit
sudo passwd gerrit
su gerrit
2、配置Java環境
從官網下載對應平臺的JDK並安裝:
http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html
安裝:
sudo tar zxvf ./jdk-7u45-Linux-i586.tar.gz -C /opt
完成後,配置相關環境變量
$: vim ~/.bashrc
添加如下環境變量:
JAVA_HOME=/opt/jdk1.6.0_38 -->安裝路徑
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
3、從官網下載gerrit
http://code.google.com/p/gerrit/
4、安裝gerrit
java -jar gerrit-full-2.5.2.war init -d review_site
一路按回車,先以默認方式安裝,之後再手動修改配置文件。
5、建立存放代碼的目錄
$:mkdir /home/gerrit/GerritResource
6、配置gerrit
$: vim review_site/etc/gerrit.config
[gerrit]
basePath = /home/gerrit/GerritResource -->第5點創建的空目錄
canonicalWebUrl = http://10.10.90.160:8081/
[database]
type = H2 -->使用默認的H2數據庫
database = db/ReviewDB
[auth]
type = HTTP
[sendemail]
enable = true
smtpServer = smtp.163.com
smtpUser = <a target="_blank" href="mailto:[email protected]">[email protected]</a> -->gerrit服務器用於發送郵件的郵箱
smtpPass = email-passwd -->郵箱密碼
from = <a target="_blank" href="mailto:[email protected]">[email protected]</a> -->郵件中顯示的發件人
[container]
user = gerrit
javaHome = /opt/jdk1.6.0_38/jre
[sshd]
listenAddress = *:29418
[httpd]
listenUrl = proxy-http://10.10.90.160:8081/
[cache]
directory = cache
7、安裝apache2服務器
sudo apt-get install --reinstall apache2 apache2.2-common
8、配置apache2服務器
8.1、開啓代理功能、複寫功能(以下模塊鏈接到mods-available)
cd /etc/apache2/mods-enabled
ln -s ../mods-available/proxy.load
ln -s ../mods-available/proxy.conf
ln -s ../mods-available/proxy_http.load
ln -s ../mods-available/proxy_balancer.conf
ln -s ../mods-available/proxy_balancer.load
ln -s ../mods-available/rewrite.load
ln -s ../mods-available/ssl.conf
ln -s ../mods-available/ssl.load
8.2、配置apache2的監聽端口
$: vi /etc/apache2/ports.conf
……
NameVirtualHost *:80
NameVirtualHost *:8080 -->仿照80端口,加上對8080端口的監聽。
Listen 80
Listen 8080
……
8.3、配置反向代理
$: sudo vi /etc/apache2/httpd.conf
- ServerName ganshuyu.pbi.com
- <VirtualHost *:8080> -->客戶端訪問:http:10.10.90.160:8081 會轉到gerrit服務器的地址:http://10.10.90.160:8080 上
- ProxyRequests Off
- ProxyVia Off
- ProxyPreserveHost On
- AllowEncodedSlashes On
- RewriteEngine On
- RewriteRule ^/(.*) http://10.10.90.160: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 /home/gerrit/review_site/etc/passwd
- </Location>
- ProxyPass / http://10.10.90.160:8081/
- </VirtualHost>
8.4、主配置文件中加入httpd.conf,使其生效
$: sudo vi /etc/apache2/apache2.conf
查看是否已包含:httpd.conf,如果沒有,則加上如下這句話:
Include httpd.conf
9、設置第一個gerrit用戶的帳號和密碼
$: touch ./review_site/etc/passwd
$: htpasswd -b ./review_site/etc/passwd gerritUser1 123456789
(後續再添加gerrit用戶可使用: $: htpasswd -b ./review_site/etc/passwd UserName PassWord )
10、開啓gerrit服務器
$: ./review_site/bin/gerrit.sh start
如果提示發生如下錯誤:
** ERROR: GERRIT_SITE not set
則可按如下方法修改:
$: vim gerrit.sh
在GERRIT_SITE變量被賦值之後加入下面這行,改變該變量的值。
GERRIT_SITE=/home/gerrit/review_site
11、重啓apache2服務器
$: sudo /etc/init.d/apache2 restart
12、訪問: http://10.10.90.160:8080/ ,用gerritUser1用戶登錄: