CentOS系统下Gerrit服务器搭建

Gerrit服务器搭建

Ubuntu系统下搭建Gerrit

前言:
从来没有搭建过服务器,花了两天时间研究,出现了很多问题,摸爬滚打,终于能成功登录了。下面我来讲解一下在CentOS系统下搭建Gerrit。

准备材料:
gerrit.war、JDK和一台装有CentOS系统的电脑。

步骤:
一、Java环境

打开终端:

查看JDK个版本

yum search java|grep jdk

安装你需要的JDK版本,例如:

yum install java-1.8.0-openjdk.x86_64

配置环境变量

vim ~/.bash_profile按回车,进入编辑模式后输入内容:

JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.141-1.b16.el7_3.x86_64(此处修改成你当前JDK的路径)
PATH=$JAVA_HOME/bin:$PATH:.
CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:.

export JAVA_HOME
export PATH
export CLASSPATH

按esc,输入:wq回车,该文件就已经修改好了。

验证:java -version

二、安装Git

yum install git

验证: git –version(此处version前面是双“-”)

三、安装Apache

yum install httpd

启动:
service httpd start

如果出现以下内容:
Redirecting to /bin/systemctl start httpd.service

这样启动:
systemctl start httpd

四、安装Gerrit

定位到存放gerrit.war的目录下,然后输入命令:
java -jar gerrit.war init -d review_site

紧接着会让你一步步配置gerrit:

[root@localhost ~]# cd /usr/local/gerrit/
[root@localhost gerrit]# java -jar gerrit.war init -d review_site

*** Gerrit Code Review 2.10
*** 

Create '/usr/local/gerrit/review_site' [Y/n]? y

*** Git Repositories
*** 

Location of Git repositories   [git]:  //git放的目录,没有的话自己会创建的

*** SQL Database
*** 

Database server type           [h2]:   //我用的默认H2数据库,也可以输入mysql然后回车,这样你用的就是mysql数据库了

*** Index
*** 

Type                           [LUCENE/?]: 

*** User Authentication
*** 

Authentication method          [OPENID/?]: HTTP  //输入HTTP,不然就不是反向代理了
Get username from custom HTTP header [y/N]? n
SSO logout URL                 : 

*** Review Labels
*** 

Install Verified label         [y/N]? 

*** Email Delivery
*** 

SMTP server hostname           [localhost]: smtp.163.com   //输入自动发送邮件的邮箱smtp
SMTP server port               [(default)]: 25  // 465/994是SSL协议端口号,25是非SSL协议端口号(这里指的163邮箱)
SMTP encryption                [NONE/?]:   //如果上一步输入的是465/994,此处输入SSL,否则直接回车
SMTP username                  [root]: gaochujia@163.com     //此处是你自动发送邮件的邮箱
gaochujia@163.com's password   :    
              confirm password :     //此处是你邮箱的授权码,非邮箱密码(切记,不然邮件发不出去)

*** Container Process
*** 

Run as                         [root]:   //这是用户,可以用默认root
Java runtime                   [/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.141-1.b16.el7_3.x86_64/jre]: 
Copy gerrit.war to /usr/local/gerrit/review_site/bin/gerrit.war [Y/n]? Y
Copying gerrit.war to /usr/local/gerrit/review_site/bin/gerrit.war

*** SSH Daemon
*** 

Listen on address              [*]: 
Listen on port                 [29418]: 

Gerrit Code Review is not shipped with Bouncy Castle Crypto SSL v149
  If available, Gerrit can take advantage of features
  in the library, but will also function without it.
Download and install it now [Y/n]? y
Downloading http://www.bouncycastle.org/download/bcpkix-jdk15on-149.jar ... !! FAIL !!


error: http://www.bouncycastle.org/download/bcpkix-jdk15on-149.jar: 302 Found
Please download:

  http://www.bouncycastle.org/download/bcpkix-jdk15on-149.jar

and save as:

  /usr/local/gerrit/review_site/lib/bcpkix-jdk15on-149.jar

Press enter to continue 
Continue without this library  [Y/n]? 
Generating SSH host key ... rsa(simple)... done

*** HTTP Daemon
*** 

Behind reverse proxy           [y/N]? y
Proxy uses SSL (https://)      [y/N]? n
Subdirectory on proxy server   [/]: 
Listen on address              [*]: 
Listen on port                 [8081]: 8091   //这个端口号一定不要和apache的端口号一样
Canonical URL                  [http://localhost/]: 

*** Plugins
*** 

Install plugin commit-message-length-validator version v2.10 [y/N]? y
Install plugin download-commands version v2.10 [y/N]? y
Install plugin replication version v2.10 [y/N]? y
Install plugin reviewnotes version v2.10 [y/N]? y
Install plugin singleusergroup version v2.10 [y/N]? y

Initialized /usr/local/gerrit/review_site
Executing /usr/local/gerrit/review_site/bin/gerrit.sh start
Starting Gerrit Code Review: FAILED
error: cannot start Gerrit: exit status 1
Waiting for server on localhost:80 ... OK
Opening http://localhost/#/admin/projects/ ...OK
[root@localhost gerrit]#

我这里出现:Starting Gerrit Code Review: FAILED,可能设置的8091与某个端口号重了,我重新走一遍
java -jar gerrit.war init -d review_site

然后在

Listen on port                 [8091]: 8099 


此处输入8099

定位到review_site/bin目录下
./gerrit.sh start

然后显示:Starting Gerrit Code Review: OK

到此,gerrit安装成功。

五、创建passwd文件,添加gerrit登录用户(-c参数为创建,仅限第一次添加用户时使用)
htpasswd -cb /etc/httpd/passwords admin admin
passwords是在httpd目录下创建的文件,第一个admin是用户名,第二个admin是密码。

第二次添加其他用户时,不要加-c:
htpasswd -b /etc/httpd/passwords test test

六、修改Apache的config文件httpd.conf

在端口号设置Listen 80下面加入以下内容:

Listen 80
Listen 8090  //额外加的端口号,两个都能访问
<VirtualHost *:8090>  //此处是Apache的端口号
    ServerName 172.16.8.2  //此处是你的ip地址
    ProxyRequests Off
    ProxyVia Off
    ProxyPreserveHost On

    <Proxy *>
        Order deny,allow
        Allow from all
    </Proxy>

    <Location /login/>
        AuthType Basic
        AuthName "Gerrit Code Review"
        Require valid-user
        AuthUserFile /etc/httpd/passwords   //刚刚创建的密码文件
    </Location>


    AllowEncodedSlashes On
    ProxyPass / http://172.16.8.2:8099/   //此处的8099是gerrit端口号
</VirtualHost>

到此为止,Bingo!
打开流浪器,输入你的IP地址加上你的Apache端口号,需要你使用刚刚设置的gerrit用户进行登录就ok了,以下是我的登录界面:
登录界面

尾声:
匆匆忙忙写完,到时候再完善,其中遇到的问题有空再补上,然后有问题的欢迎留言,拜拜,我去打把野。

  • 3
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值