PART1:环境说明
linux server采用的是ubuntu server12虚拟机(ubuntu-12.04.5-server-amd64.iso,下载地址:)
搭建环境时,linux server ip为192.168.0.188,管理用户为mng
由于linux server对鼠标、图形界面支持不是很友好,在搭建阶段,采用另一台控制主机远程登录的方式进行管理,方便操作
控制主机为192.168.0.55,管理用户为tly
PART2:linux主环境
1. 更新apt源:在控制主机上准备好apt源文件,linux主机上采用通过scp从控制主机获取apt源文件并覆盖到/etc/apt/目录下同名文件
执行apt-get update更新
2. 安装vim 和 sshd(openssh-server),如果无特殊说明均采用apt-get install 安装,下同
3. 为root用户设置密码(sudo passwd root),编辑/etc/sudoers/ 管理组sudo免密码(%admin ALL=(ALL)NOPASSWD: ALL,%admin ALL=(ALL) NOPASSWD: ALL)
4. 设置server虚拟机网络连接方式为桥接,并设置路由器绑定静态ip给server 188地址
5. 从管理机通过ssh远程登录到server(ssh mng@192.168.0.188)
6. 设置server hostname(),同时更新hosts文件中的域名映射(127.0.1.1 )。特别说明,如果需要安装邮件服务,域名的设置一定不要跳过。
PART3:安装域名服务器
1. 安装bind9
2. 配置bind9(参考)
3. 配置resolv.conf,让dns解析指向域名服务器;因为resolv.conf由resolvconf工具更新,不能直接修改resolv.conf,否则重启配置丢失。
配置resolvconf,将server的ip地址加入/etc/resolvconf/resolv.conf.d/head中(nameserver 192.168.0.188),重启resolvconf(sudo /etc/init.d/resolvconf restart)
4. 验证:输入nslookup
在nslookup交互环境中输入可以正常解析,即为OK
PART4:安装邮件服务
1. 安装postfix和mailutils(sudo apt-get install postfix mailutils)
按默认配置即可
2. 安装完成后,测试(echo “mail installed, send is OK?” | mail -s "test mail send" xxx@126.com
可以通过tail -f /var/log/mail* 查看发生日志
PART5:安装geriit
1. 安装git(git-core)
2. 安装java(openjdk-7-jre-headless)
3. 下载gerrit(下载地址:),安装(java -jar gerrit-2.11.war init -d review_site)
认证方式修改为http,gerrit运行在代理后,其余按默认安装
修改配置文件(参考 http://blog.csdn.net/ganshuyu/article/details/8978614)
4. 安装apache2(sudo apt-get install --reinstall apache2 apache2.2-commo)
5. 配置apache2
配置apache2,开启代理功能、复写功能:
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
配置apache2的监听端口:
$: vi /etc/apache2/ports.conf
……
NameVirtualHost *:80
NameVirtualHost *:8080 -->仿照80端口,加上对8080端口的监听。
Listen 80
Listen 8080
配置反向代理:
$: sudo vi /etc/apache2/httpd.conf
6. 配置邮件gerrit.config(如果使用本地邮件服务器,不需要配置,如果使用外部邮件服务器需要配置)
[sendemail]
smtpServer = smtp.exmail.qq.com
smtpServerPort = 465
smtpEncryption = ssl
smtpUser = xxx@qq.com
smtpPass = xxx
sslVerify = false
from=CodeReview
7. 添加gerrit用户(htpasswd -cb review_site/etc/passwords mng 123456, -c 是创建passwords文件,后续添加不要使用-c否则会覆盖之前的设置)
8. 设置gerrit服务开机自启动(参考http://blog.csdn.net/xbl1986/article/details/18656887)
安装sysv-rc-conf,把gerrit初始化目录下~/bin/gerrit.sh 拷贝到/etc/init.d/下重命名为gerrit
运行sysv-rc-conf,找到gerrit把2、3、4、5勾选上(使用空格)
配置inti.d/gerrit,修改GERRIT_SITE_1="/home/mng/review_site"
重启查看是否自启动
PART5:注册管理员用户
1. 生成密匙/公匙(ssh-keygen -t rsa, 生成的密匙对在.ssh目录下)
2. 登录到gerrit网页,输入用户名和密码;登录后完成姓名,邮箱注册(发送确认邮件到注册有效,登录状态下,复制邮件中的链接到浏览器,完成确认);添加公匙到gerrit中(cat .ssh/id_rsa.pub,复制显示内容到网页)。
PART6:创建项目
1. 命令行创建项目
ssh -p 29418 gerrit create-project --empty-commit --name SDK/manifest
注:删除项目,先删除git目录下的xxx.git,软后执行
ssh -p 29418 gerrit flush-caches --cache projects
2. 客户端clone项目,修改并提交到评审服务器
克隆:git clone ssh://192.168.0.188:29418/SDK/manifest.git
安装commit-msg钩子(服务器开启change-id确认,该钩子用于生成change-id):scp -P 29418 tly@192.168.0.188:hooks/commit-msg .git/hooks/
提交:git push origin HEAD:refs/for/master:
PART7:repo
1. 下载repo
git clone git://aosp.tuna.tsinghua.edu.cn/android/git-repo.git
2. 把repo导入到gerrit服务器,供其他人下载
在服务器/var/www/目录下,执行git clone --bare git://aosp.tuna.tsinghua.edu.cn/android/git-repo.gi git-repo.git,完成后使能post-update(cp hooks/post-update.sample hooks/post-update)
将下载好的repo修改其中REPO_URL指向 gerrit服务器 “http:///git-repo.git”
将修改的repo脚本复制到/var/www/目录下
阅读(7532) | 评论(0) | 转发(0) |