Gerrit 安装配置

Gerrit 安装配置

1. 安装准备

Ubuntu 版本 22.04. 切换到 git 用户

  • git 服务器安装

  • JDK 安装 ( 最好安装1.8版本 )

    sudo apt-get update
    sudo apt-get install openjdk-8-jdk
    java -version
    
  • 下载gerrit

    wget https://gerrit-releases.storage.googleapis.com/gerrit-3.2.3.war
    

2. 安装 apache2

sudo apt-get install apache2

2.1 修改配置文件

2.1.1 修改 httpd.conf
sudo vim /etc/apache2/httpd.conf

<VirtualHost *:8081>

    ServerName localhost

    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
        AuthBasicProvider file
        AuthUserFile /usr/local/passwords
    </Location>

    AllowEncodedSlashes On

    ProxyPass / http://127.0.0.1:8091/ nocanon

</VirtualHost>

** /usr/local/passwords** 是存放用户登录信息的文件, gerrit 默认第一个登录的用户为管理员账户.

2.1.2 修改 apache2.conf
sudo vi /etc/apache2/apache2.conf

末尾添加:
Include httpd.conf
2.1.3 修改 ports.conf

添加:

Listen 8081

2.2 开启SSL、Proxy、Rewrite 等模块

cd /etc/apache2/mods-enabled/
sudo ln -s ../mods-available/proxy.load
sudo ln -s ../mods-available/proxy.conf
sudo ln -s ../mods-available/proxy_http.load
sudo ln -s ../mods-available/proxy_balancer.conf
sudo ln -s ../mods-available/proxy_balancer.load
sudo ln -s ../mods-available/rewrite.load
sudo ln -s ../mods-available/ssl.conf
sudo ln -s ../mods-available/ssl.load
sudo ln -s ../mods-available/slotmem_shm.load
sudo ln -s ../mods-available/socache_shmcb.load

3. 安装配置 gerrit

3.1 命令行执行安装指令

 java -jar gerrit-3.2.3.war init -d review_site

其中 gerrit-3.2.3.war 为 gerrit 的安装包, review_site 为安装路径,可自定义

3.2 修改 gerrit 配置

vim ~/review_site/etc/gerrit.config
[gerrit]
        basePath = /home/git/repositories
        canonicalWebUrl = http://admin123-OptiPlex-7090:8081/
        serverId = 254ef721-9833-4205-b6b0-1743ff04cb72
[container]
        javaOptions = "-Dflogger.backend_factory=com.google.common.flogger.backend.log4j.Log4jBackendFactory#getInstance"
        javaOptions = "-Dflogger.logging_context=com.google.gerrit.server.logging.LoggingContext#getInstance"
        user = git
        javaHome = /usr/lib/jvm/java-8-openjdk-amd64/jre
[index]
        type = lucene
[auth]
        type = HTTP
        userNameCaseInsensitive = true
[receive]
        enableSignedPush = false
[sendemail]
    enable = true
    smtpServer = smtp.qq.com
    smtpServerPort = 465
    smtpEncryption = SSL
    sslVerify = true
    smtpUser = 404422965@qq.com
    smtpPass = aruecupwwkvvcaih
    from = 404422965@qq.com
[sshd]
        listenAddress = *:29418
[httpd]
        listenUrl = proxy-http://*:8091/
[cache]
        directory = cache
[gitweb]
    type = gitweb
    cgi = /usr/lib/cgi-bin/gitweb.cgi

其中, basePath 即为服务器 git 仓库路径,参考文档 git 服务器安装, canonicalWebUrl 就是 gerrit 服务器的URL, sendemail 配置可参考 gerrit服务器邮箱设置.

3.3 配置 gerrit 账户

touch /usr/local/passwords
sudo htpasswd -b /usr/local/passwords admin admin

注意此处的 passwords 路径应该与上面的 httpd.conf 里面的 login 的配置要相同,上面的命令创建了用户 admin, 密码 admin. gerrit 服务器默认第一个登录的用户即为超级用户, 与创建用户的顺序无关.

4. 安装gitweb

sudo apt-get install gitweb

5.启动服务器

sudo ~/review_site/bin/gerrit.sh restart
sudo /etc/init.d/apache2 restart

如果此时 start gerrit.sh 失败 ,可以查看 /review_site/logs 下面的 log 文件. 如果提示 Locked by another process , 可以执行

ps -e |grep java
kill -9 pid

如果提示邮箱问题,比如connect refused, 则可能是邮箱的 smtpPass 错误. 参考 gerrit服务器邮箱设置 修改.

6.用户登录后提交邮箱及公钥

登录 gerrit 之后, 点击 BROWSE -> Repositories 可以查看仓库目录,

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YCKvYvZw-1669703740605)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20221129141809966.png)]

管理员用户可以点击对应的 gitweb 选项, 进入 gitweb 视图

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cfNqN8rN-1669703740606)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20221129141906348.png)]

6.1 提交邮箱

​ 点击YOUR -> Email Addresses , 填入邮箱号, 点击 SEND VERIFICATION 进行邮箱验证.

6.2 提交公钥

​ 点击YOUR -> SSH keys ,将公钥内容复制到输入框内, 点击 ADD 即可.

如果此处报500错误,则有可能是邮箱问题,按照上面的文档进行修改

7 . gerrit 权限管理

​ 参考 gerrit权限控制

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值