Ubuntu下搭建基于apache2的gerrit+gitweb服务器
说明:Ubuntu版本12.04
1. 配置gerrit管理帐号
|
1
|
sudo adduser gerrit |
增加sudo权限:
|
1
|
sudo usermod -a -G sudo gerrit |
切换到gerrit账号:
|
1
|
sudo su gerrit |
2. 安装java
|
1
2
3
|
sudo add-apt-repository ppa:openjdk-r/ppasudo apt-get updatesudo apt-get install openjdk-7-jdk |
3. 安装git
|
1
|
sudo apt-get install git |
4. 安装配置apache2
|
1
|
sudo apt-get install apache2 |
修改配置文件:
|
1
|
sudo vi /etc/apache2/httpd.conf |
具体内容如下:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
<VirtualHost *:8081> ServerName 192.168.130.10 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 /home/gerrit/review_site/passwords </Location> AllowEncodedSlashes On ProxyPass / http://127.0.0.1:8091/ nocanon</VirtualHost> |
注:如httpd.conf没有Include到apache2.conf中,需手动添加:
|
1
|
sudo vi /etc/apache2/apache2.conf |
添加,
|
1
|
Include httpd.conf |
修改配置文件,添加对8081端口的监听:
|
1
|
sudo vi /etc/apache2/ports.conf |
添加,
|
1
|
Listen 8081 |
开启SSL、Proxy、Rewrite等模块:
|
1
|
cd /etc/apache2/mods-enabled/ |
|
1
2
3
4
5
6
7
8
9
10
|
sudo ln -s ../mods-available/proxy.loadsudo ln -s ../mods-available/proxy.confsudo ln -s ../mods-available/proxy_http.loadsudo ln -s ../mods-available/proxy_balancer.confsudo ln -s ../mods-available/proxy_balancer.loadsudo ln -s ../mods-available/rewrite.loadsudo ln -s ../mods-available/ssl.confsudo ln -s ../mods-available/ssl.loadsudo ln -s ../mods-available/slotmem_shm.loadsudo ln -s ../mods-available/socache_shmcb.load |
5. 安装配置gerrit
|
1
|
java -jar gerrit-2.13.6.war init -d ~/review_site |
安装配置先选择默认配置,安装完成后再来修改配置文件:
|
1
|
vi ~/review_site/etc/gerrit.config |
具体内容如下:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
[gerrit] basePath = git serverId = 02481fa0-9b63-4b6a-9869-8b4e2a4364ee canonicalWebUrl = http://192.168.130.10:8081/[database] type = h2 database = /home/gerrit/review_site/db/ReviewDB[auth] type = HTTP[receive] enableSignedPush = false[sendemail] smtpServer = smtp.company.com smtpServerPort = *** smtpEncryption = ssl smtpUser = user@company.com smtpPass = ****** sslVerify = false from = Code Review < gerrit@company.com >[container] user = gerrit javaHome = /usr/lib/jvm/java-7-openjdk-amd64/jre[sshd] listenAddress = *:29418[httpd] listenUrl = proxy-http://*:8091/[cache] directory = cache |
|
1
2
|
touch ~/review_site/passwordssudo htpasswd -b ~/review_site/passwords admin 123123 |
6. 安装配置gitweb
|
1
|
sudo apt-get install gitweb |
查看相关配置文件安装路径:
|
1
|
dpkg -L gitweb |
得到输出如下:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
/./usr/usr/share/usr/share/doc/usr/share/doc/gitweb/usr/share/doc/gitweb/examples/usr/share/doc/gitweb/examples/index.aux-generation/usr/share/doc/gitweb/README.Debian/usr/share/doc/gitweb/copyright/usr/share/doc/gitweb/README/usr/share/doc/gitweb/NEWS.Debian.gz/usr/lib/usr/lib/cgi-bin/etc/etc/apache2/etc/apache2/conf.d/etc/apache2/conf.d/gitweb/etc/gitweb.conf/usr/share/doc/gitweb/changelog.Debian.gz/usr/lib/cgi-bin/gitweb.cgi |
根据上面的地址在gerrit.conf中添加如下配置:
|
1
2
3
|
[gitweb] type = gitweb cgi = /usr/lib/cgi-bin/gitweb.cgi |
相关说明:
gitweb集成gerrit后,默认只有管理员用户才能查看gitweb超链接,普通用打开链接后页面显示Not Found。如果想给普通的用户查看gitweb超链接的权限,则必须对项目设置refs/meta/config 的read权限。而这个权限在All-Projects的ACL里只对Administrators用户和Project Owners开放。
7. 重启gerrit和apache2
|
1
2
|
sudo ~/review_site/bin/gerrit.sh restartsudo /etc/init.d/apache2 restart |
8. 访问gerrit 管理界面
浏览器输入:
|
1
|
http://192.168.130.10:8081/ |
在弹出框输入htpasswd命令设置的账号密码即可。
Ubuntu下搭建基于apache2的gerrit+gitweb服务器的更多相关文章
- Ubuntu下搭建Hyperledger Fabric v1.0环境
多次尝试才正常启动了Fabric,如遇到各种莫名错误,请参考如下一步步严格安装,特别用户权限需要注意. 一.安装Ubuntu16 虚拟机或双系统,虚拟机有VirtualBox或者VMware,Ub ...
- 如何在Ubuntu下搭建tftp服务器
远程桌面连接工具 今天开始调试arm的板子,要通过tftp下载到板子上,所以又要配置tftp服务器,真的烦死了… (本人酷爱装系统,所以经常都要搞配置) 因为之前已经在Ubuntu下搭建过很多次t ...
- 在Ubuntu下搭建ASP.NET 5开发环境
在Ubuntu下搭建ASP.NET 5开发环境 0x00 写在前面的废话 年底这段时间实在太忙了,各种事情都凑在这个时候,没时间去学习自己感兴趣的东西,所以博客也好就没写了.最近工作上有个小功能要做成 ...
- 在Linux(Ubuntu)下搭建ASP.NET Core环境并运行 继续跨平台
最新教程:http://www.cnblogs.com/linezero/p/aspnetcoreubuntu.html 无需安装mono,在Linux(Ubuntu)下搭建ASP.NET Core环 ...
- Ubuntu下搭建NodeJS+Express WEB开发框架
Ubuntu下搭建NodeJS+Express WEB开发框架 2012-12-27 15:06 作者: NodeJSNet 来源: 本站 浏览: 2,966 次阅读 我要评论暂无评论 字号: 大 中 ...
- 如何在Ubuntu下搭建Android NDK开发环境
1 搭建Android SDK开发环境 参考在在Ubuntu下搭建Android SDK开发环境(图文)首先在Ubuntu下搭建Android SDK开发环境. 2 下载NDK开发包 打开官网: ht ...
- Windows 7下 搭建 基于 ssh 的sftp 服务器
Windows xp 下 搭建 基于 ssh 的sftp 服务器,服务器端可以用 freesshd,F-secure server等,filezilla server不可用,之前傻乎乎的用file ...
- Ubuntu下搭建ASP.NET 5
在Ubuntu下搭建ASP.NET 5开发环境 0x00 写在前面的废话 年底这段时间实在太忙了,各种事情都凑在这个时候,没时间去学习自己感兴趣的东西,所以博客也好就没写了.最近工作上有个小功能要 ...
- 在Ubuntu下搭建FTP服务器的方法
由于整个学校相当于一个大型局域网,相互之间传送数据非常快,比如要共享个电影,传点资料什么的. 所以我们可以选择搭建一个FTP服务器来共享文件. 那么问题来了,有的同学会问,我们既然在一个局域网内,直接 ...
随机推荐
- bzoj 2818 GCD 数论 欧拉函数
bzoj[2818]Gcd Description 给定整数N,求1<=x,y<=N且Gcd(x,y)为素数的数对(x,y)有多少对. Input 一个整数N Output 如题 Samp ...
- linux 安装问题make: 没有指明目标并且找不到makefile。 停止
错误发生的可能原因,忘记安装软件需要的依赖.
- poj2117求割点后最多的块。
tarjan算法,枚举割点(注意此题无向图可能不连通),每个割点分割后最大块数+连通分量-1即可.开始老是TLE,后来比较了他人代码,只在vector<vector<int.>.&g ...
- Django学习之 - 基础ORM
ORM操作参考: http://www.cnblogs.com/wupeiqi/articles/5246483.html 1:根据类自动创建数据库表,(类创建文件:models.py) 2:根据类对 ...
- HDU 5695 Gym Class
拓扑排序. #include<cstdio> #include <iostream> #include<cstring> #include<cmath> ...
- delphi操作xml学习笔记 之一 入门必读
Delphi 对XML的支持---TXMLDocument类 Delphi7 支持对XML文档的操作,可以通过TXMLDocument类来实现对XML文档的读写.可以利用TXMLDocum ...
- SQL2008安装时,“provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接) (.Net SqlClient Data Provider)” 错误的解决方案
错误提示: 在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误.未找到或无法访问服务器.请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接. (provide ...
- 【转】JavaScript错误处理和堆栈追踪
原文: https://www.cnblogs.com/caoru/p/6699583.html --------------------------------------------------- ...
- 盘点UML中的四种关系
生活中,我们既是独立的个体,又通过联系形成各种关系,比方说:朋友.恋人.父子,同学--于是乎,出现了神乎其神的六人定律. 那么在UML中又存在什么样的关系呢?以下我们来梳理一下. 关联(Associa ...
- Structual设计--Bridge模式
1.意图 将抽象部分与它的实现部分分离.使他们都能够独立地变化. 2.别名 Handle/Body 3.动机 当一个抽象对象可能有多个实现时,通经常使用继承来协调它们.抽象类定义对该抽象的接口.而详细 ...