这段时间,想搭建一个gerrit,用于代码托管,gerrit的搭建,网上有很多种教程,但是自己按照别人的教程逐步操作,一直出现诸多问题。最头痛的就是:
Configuration Error
Check the HTTP server's authentication settings.
后来经过他人指点,才知道自己的原因。由于对Apache的反向代理的机制,没有清楚,导致寸步难行。现将搭建方式进行记载:
一.gerrit的搭建
由于gerrit和Apache的安装,网上教程已经很多,这里就不一一说明了。本文主要讲解如何配置Apache的反向代理.
本次搭建环境为VMware上的Ubuntu12.04,通过Windows上,ssh去操作。 Ubuntu虚拟机的ip地址为192.168.1.6,Windows的IP地址为192.168.1.3。搭建的gerrit服务器,在Windows上通过http://192.168.1.6:9999/进行访问。
假定gerrit已经成功安装到Ubuntu,其路径为:/home/gerrit/review-gerrit
进入etc路径,即/home/gerrit/review-gerrit/etc,这里贴出gerrit.config文件:
- [gerrit]
- basePath = /home/gerrit/prj-source
- canonicalWebUrl = http://192.168.1.6:10000
- [database]
- type = h2
- database = db/ReviewDB
- [auth]
- type = HTTP
- [sendemail]
- smtpServer = localhost
- [container]
- user = root
- javaHome = /usr/lib/jvm/java-6-openjdk-amd64/jre
- [sshd]
- listenAddress = *:29418
- [httpd]
- listenUrl = http://*:10000
完成以上的步骤,比较简单,很多教程都有过描述。下面主要讲解Apache的反向代理。
首先简单描述一下反向代理的基础:反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,
并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。
例如我们想通过PC浏览器去访问http://192.168.1.6:9999,就是一个反向代理。在/home/gerrit/review- gerrit/etc/gerrit.config中,我们配置gerrit端口bind在10000,为啥外部通过访问端口9999,就可以打开 gerrit的web页面?
原因就是Apache的反向代理功能。那就开始配置Apache吧!
a.第一步,要在Apache上新增端口9999,用户监听网络事件。修改配置文件/etc/apache2/ports.conf。
- NameVirtualHost *:80
- Listen 80
- Listen 9999
b.第二步,增加反向代理的配置。/etc/apache2/sites-enabled/000-default.conf
- <VirtualHost *:9999>
- ServerName 192.168.1.6
- ProxyPreserveHost On
- ProxyRequests Off
- <Proxy *>
- Order deny,allow
- Allow from all
- </Proxy>
- <Location />
- AuthType Basic
- AuthName "Welcomme to Gerrit Code Review Site!"
- Require valid-user
- AuthUserFile /home/gerrit/review-gerrit/htpasswd.conf
- </Location>
- ProxyPass / http://192.168.1.6:10000/
- proxyPassReverse / http://127.0.0.1:10000/
- </VirtualHost>
c.完成以上配置,则成功。然后restart Apache和gerrit服务即可
然后在pc浏览器上输入:http://192.168.1.6:9999/,则启动gerrit
输入账号密码,显示如下:
gerrit安装配置成功。
如果不适用Apache进行反向代理,使用nginx则更加简单,直接修改一个文件就可以了。/etc/nginx/conf.d/gerrit.conf,没有这个文件,则直接touch gerrit.conf就可生成,然后编辑一下。
- server {
- listen *:9999;
- server_name 192.168.1.6;
- allow all;
- deny all;
- auth_basic "Welcomme to Gerrit Code Review Site!";
- auth_basic_user_file /home/gerrit/review-gerrit/htpasswd.conf;
- location / {
- proxy_pass http://127.0.0.1:10000;
- }
- }
按照以上步骤,可以搭建一个gerrit服务器了。
另外,关于gerrit服务器的后台权限&项目管控,还在逐步研究。
fix below error:
/etc/apache2/sites-enabled$ systemctl restart apache2
Job for apache2.service failed because the control process exited with error code. See "systemctl status apache2.service" and "journalctl -xe" for details.
:/etc/apache2/sites-enabled$ systemctl status apache2.service
4月 24 23:35:52 review apache2[11436]: Output of config test was:
4月 24 23:35:52 review apache2[11436]: AH00548: NameVirtualHost has no effect and will be removed in the next release /etc/apache2/ports.conf:5
4月 24 23:35:52 review apache2[11436]: AH00526: Syntax error on line 3 of /etc/apache2/sites-enabled/000-default.conf:
FIX:
cd /etc/apache2/mods-enabled
ln -s /etc/apache2/mods-available/proxy.conf proxy.conf
ln -s /etc/apache2/mods-available/proxy.load proxy.load
ln -s /etc/apache2/mods-available/proxy_http.load proxy_http.load
ubuntu15.10 restart apache2:
systemctl restart apache2
refer to:
http://blog.csdn.net/coder80/article/details/48176559
相关推荐
### Gerrit服务器搭建详解 #### 一、简介 Gerrit是一款基于Git的代码审查工具,主要用于企业级软件开发过程中的代码审查与管理。本文将详细介绍如何搭建一个完整的Gerrit服务器,包括环境配置、安装步骤以及后续的...
搭建code review gerrit服务器 网上这类资料很多,但能够真正跑起来的很少,因此本人将祥细的配置过程写了出来,并运行成功,方便广大开发者受益于正确的文档.https://www.gerritcodereview.com/
本文将指导读者从头开始搭建一个完整的代码评审服务器,使用 Git、Repo 和 Gerrit 等工具。本篇文章将详细介绍每个步骤的配置过程,旨在帮助读者快速搭建一个功能完善的代码服务器。 代码服务器搭建步骤 名词解释 ...
2. 安装并配置 Servlet 容器,如 Apache Tomcat 或 Jetty,作为 Gerrit 的前端服务器。 3. 更新 Gerrit 的 `war` 文件到 Servlet 容器的 webapps 目录下。 4. 配置代理规则,使外部可以通过 HTTP 访问 Gerrit。 六...
搭建gerrit服务器详细操作流程,有任何问题可以留言,互相提高
### 从远端下载repo镜像,然后推送到本地Gerrit服务器 #### 知识点一:Repo工具概述 Repo是Google为Android项目提供的一个分布式版本控制系统,它基于Git之上构建,主要用于管理大型项目的多仓库结构。通过Repo...
在本文中,我们将深入探讨如何在Windows环境下搭建一个基于Git的代码审核平台——Gerrit。Gerrit是一个开源的代码审查系统,它允许开发者提交代码,并通过一个交互式的Web界面进行审查,确保代码的质量和一致性。...
9. 配置Nginx作为Gerrit的反向代理: 在`/home/server/nginx-1.6.0/conf/nginx.conf`中添加Gerrit的配置段,确保Gerrit监听的端口(默认为8080)映射到合适的URL。 10. 重启Nginx服务以应用新的配置: ``` sbin/...
自己从零开始搭建git + gitweb + gerrit服务器 软硬件环境 物理机:Windows10 64位 VMware版本:VMware Workstation 12 Ubuntu版本:ubuntu-14.04-server-amd64.iso
Gitiles是Gerrit代码审查系统中的一个插件,它被设计用来方便地浏览和查看存储在Gerrit服务器上的Git仓库的源代码。Gitiles提供了网页界面,使得用户可以直观地浏览项目文件、查看历史记录、比较不同版本之间的差异...
配置Java环境从官网下载gerrit当前最新版本为2.14。安装MySQL通过如下命令安装Gerrit:按照提示一步步完成安装。有几个按转配置需要特别注意一下。关于Gerrit的Git仓库的保存地址:这个选项用于配置Gerrit的Git仓库...
重启Apache2和Gerrit是Gerrit搭建的必要步骤。需要重启Apache2和Gerrit来应用配置更改。 常见错误处理 常见错误处理是Gerrit搭建的必要步骤。需要处理常见错误,如重启Apache2时遇到apache2: could not reliably ...
但为了方便外部访问,通常还需要配置反向代理,例如使用Nginx或Apache。在Nginx配置中,你需要创建一个新的虚拟主机,将HTTP请求转发到Gerrit的监听端口。这里仅提供Nginx配置示例,具体配置需根据实际情况调整: ``...
### CentOS下搭建Git、Gerrit与Jenkins版本控制系统 #### 一、引言 ##### 1.1 文档目的 本文档旨在提供一个全面的指南,帮助读者在CentOS环境下搭建一套完整的版本控制系统,包括Git、Gerrit以及Jenkins。通过本...
ldap+mysql+gerrit环境搭建,简单介绍如何搭建gerrit代码检视系统
在搭建Gerrit之前,我们需要进行一系列的系统配置和软件安装。以下是对文档内容的详细解析: 1. **系统安装**: - 系统平台:CentOS 7.5 - 系统版本:CentOS 1805 - 语言选择:简体中文 - 软件选择:选择带GUI...
gerrit代码审核服务器:作为Git代码管理服务器,gerrit为git代码的提交引入了强制审核机制(除非特别的授权设置),所以也可以称gerrit服务器为代码审核服务器,其提供团队开发时的严格的代码审核入库机制,便于版本...
《Gerrit服务器代码操作基本方法1》 Gerrit是一种强大的代码审查工具,常用于Git版本控制系统中,确保代码质量。本文档旨在详细介绍在Gerrit服务器上进行代码操作的基本流程,包括代码提交、审批和合并等核心步骤。...