1、下载解压Jdk(官网下载)
mkdir -p /usr/local/software
tar -zxvf jdk-8u171-linux-x64.tar.gz -C /usr/local/software
2、配置环境变量
vim /etc/profile
# 加入以下内容
#export JAVA_HOME=/usr/local/software/jdk1.8.0_171
#export JRE_HOME=$JAVA_HOME/jre
#export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
#export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$JAVA_HOME:$PATH
# 刷新配置使配置生效
source /etc/profile
3、查看Java版本
java -version
#java version "1.8.0_171"
#Java(TM) SE Runtime Environment (build 1.8.0_171-b11)
#Java HotSpot(TM) 64-Bit Server VM (build 25.171-b11, mixed mode)
① 源码安装zlib(下载地址:http://zlib.net/,本文使用版本:zlib-1.2.11.tar.gz)
② 解压安装
# 解压
tar -xzvf zlib-1.2.11.tar.gz -C /usr/local/software
# 进入解压目录
cd /usr/local/software/zlib-1.2.11
# 配置+编译检查
./configure --prefix=/usr/local/zlib
# 编译+安装
make && make install
① 源码安装openssl(下载地址:https://www.openssl.org/source/,本文使用版本:openssl-fips-2.0.16.tar.gz)
② 解压安装
# 解压
tar -xzvf openssl-fips-2.0.16.tar.gz -C /usr/local/software
# 进入解压目录
cd /usr/local/software/openssl-fips-2.0.16
# 配置+编译检查
./config --prefix=/usr/local/openssl
# 编译+安装
make && make install
没有深究是啥玩意,使用yum安装就好
yum -y install tcl build-essential tk gettext
① 源码安装git(下载地址:https://mirrors.edge.kernel.org/pub/software/scm/git/,本文使用版本:git-2.17.0.tar.gz)
② 解压安装
# 解压
tar -xzvf git-2.17.0.tar.gz -C /usr/local/software
# 进入解压目录
cd /usr/local/software/git-2.17.0
# 配置+编译检查
./configure --prefix=/usr/local/git --with-zlib=/usr/local/zlib
# 编译+安装
make && make install
③ 配置环境变量并刷新配置
vim /etc/profile
# 加入以下内容
#export GIT_HOME=/usr/local/git
#export PATH=$GIT_HOME/bin:$PATH
# 刷新配置使配置生效
source /etc/profile
1、下载Gerrit(下载地址:https://gerrit-releases.storage.googleapis.com/gerrit-2.13.11.war)
2、安装Gerrit和插件
mkdir -p /usr/local/gerrit
java -jar gerrit-2.13.11.war init -d /usr/local/gerrit
# 安装download-commands插件,也可以在安装过程根据提示y(插件安装默认是n)
java -jar gerrit-2.13.11.war init -d /usr/local/gerrit --batch --install-plugin download-commands
执行命令然后就开始安装过程了,安装的过程会询问很多问题,有一些判断性的问题会用 [y/N] 这样的形式,大写的字母表示默认,我们直接敲回车就表示采用默认的安装选项。我们安装的时候,可以只在Authentication method时输入http,其他全部回车用默认值,因为其他配置我们待会可以通过etc/gerrit.config文件进行修改。
如果使用Mysql数据库,可能会出现数据库错误错误“Default值啥啥啥的,没记录忘记了”,这时需要使用root用户去数据库里面设置下参数,语句如下:
set global explicit_defaults_for_timestamp=1;
① 源码安装openssl(下载地址:https://www.openssl.org/source/,本文使用版本:openssl-fips-2.0.16.tar.gz)
② 解压安装
# 解压
tar -xzvf openssl-fips-2.0.16.tar.gz -C /usr/local/software
# 进入解压目录
cd /usr/local/software/openssl-fips-2.0.16
# 配置+编译检查
./config --prefix=/usr/local/openssl
# 编译+安装
make && make install
① zlib源码下载(下载地址:http://zlib.net/,本文使用版本:zlib-1.2.11.tar.gz)
② 解压
# 解压
tar -xzvf zlib-1.2.11.tar.gz -C /usr/local/software
① pcre源码下载(下载地址:ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/,本文使用版本:pcre-8.42.tar.gz)
② 解压
# 解压
tar -xzvf pcre-8.42.tar.gz -C /usr/local/software
① 源码安装Nginx(下载地址:http://nginx.org/download/,本文使用版本:nginx-1.14.0.tar.gz)
② 解压安装
# 解压
tar -xzvf nginx-1.14.0.tar.gz -C /usr/local/software
# 进入解压目录
cd /usr/local/software/nginx-1.14.0
# 配置+编译检查(这里注意"--with-pcre"和"--with-zlib"是指向源码目录,不是安装目录)
./configure --prefix=/usr/local/nginx --with-openssl=/usr/local/openssl --with-zlib=/usr/local/software/zlib-1.2.11 --with-pcre=/usr/local/software/pcre-8.42
# 编译+安装
make && make install
安装过程,可能会出现编译问题(gcc啥的),需要安装gcc,命令如下
yum -y install gcc gcc-c++
③ 可能出现错误信息
错误信息:路径下找不到nginx.pid
#nginx: [error] open() "/usr/local/nginx/logs/nginx.pid" failed (2: No such file or directory)
解决方法:执行一下nginx
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
1、增加gerrit转发配置文件
# 配置gerrit转发
vim /usr/local/nginx/conf/gerrit.conf
# 配置内容如下:
server {
listen *:80;
server_name gerrit.microwu.com;
allow all;
deny all;
auth_basic "Welcomme to Gerrit Code Review Site!";
auth_basic_user_file /usr/local/gerrit/conf/gerrit.password;
location / {
proxy_pass http://127.0.0.1:8080;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header Host $host;
}
}
2、将gerrit转发配置include到nginx.cnf
vim /usr/local/nginx/conf/nginx.conf
# 在http{}中增加一行,
include gerrit.conf;
3、重启Nginx
/usr/local/nginx/sbin/nginx -s reload
在上述配置中已经指向gerrit认证用户保存文件为/usr/local/gerrit/conf/gerrit.password,这里我们需要用apach的htpasswd工具来编辑该文件,所以需要安装Apache。
① 源码安装APR(下载地址:http://apr.apache.org/download.cgi,本文使用版本:apr-1.6.3.tar.gz)
② 解压安装
# 解压
tar -xzvf apr-1.6.3.tar.gz -C /usr/local/software
# 进入解压目录
cd /usr/local/software/apr-1.6.3
# 配置+编译检查
./configure --prefix=/usr/local/apr
# 编译+安装
make && make install
这时可能报错:rm: cannot remove `libtoolT': No such file or directory
这时我们修改configure文件中的$RM "$cfgfile"为$RM -f "$cfgfile"
再次运行./configure --prefix=/usr/local/apr即可
① 源码安装APR-Util(下载地址:http://apr.apache.org/download.cgi,本文使用版本:apr-util-1.6.1.tar.gz)
② 解压安装
# 解压
tar -xzvf apr-util-1.6.1.tar.gz -C /usr/local/software
# 进入解压目录
cd /usr/local/software/apr-util-1.6.1
# 配置+编译检查
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
# 编译+安装
make && make install
这时可能报错:error: expat.h: No such file or directory
这时我们安装"yum -y install expat-devel",再次运行make即可(make之前做下make clean清除之前的编译)
① 源码安装pcre(下载地址:ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/,本文使用版本:pcre-8.42.tar.gz)
② 解压安装
# 解压
tar -xzvf pcre-8.42.tar.gz -C /usr/local/software
# 进入解压目录
cd /usr/local/software/pcre-8.42
# 配置+编译检查
./configure --prefix=/usr/local/pcre
# 编译+安装
make && make install
安装过程,可能会出现编译问题(gcc啥的),需要安装gcc,命令如下
yum -y install gcc gcc-c++
① 源码安装apache(下载地址:http://httpd.apache.org/download.cgi,本文使用版本:httpd-2.4.33.tar.gz)
② 解压安装
# 解压
tar -xzvf httpd-2.4.33.tar.gz -C /usr/local/software
# 进入解压目录
cd /usr/local/software/httpd-2.4.33
# 配置+编译检查
./configure --prefix=/usr/local/apache --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre
# 编译+安装
make && make install
默认是80端口,Nginx已经启动占用80端口,所以先关闭Nginx再启动apace验证。
# 停止Nginx
/usr/local/nginx/sbin/nginx -s stop
# 启动Apache
/usr/local/apache/bin/apachectl start
# 记得验证完成之后关闭Apache,启动Nginx
# 停止Apache
/usr/local/apache/bin/apachectl stop
# 启动Nginx
/usr/local/nginx/sbin/nginx
1、Gerrit用户配置
# 创建(覆盖原有)gerrit.password并添加admin用户
/usr/local/apache/bin/htpasswd -c /usr/local/gerrit/conf/gerrit.password admin
#New password:
#Re-type new password:
#Adding password for user admin
# 记住要授权,否则可能会出现500错误
chmod 755 /usr/local/gerrit/conf/gerrit.password
# 添加用户 user为用户名,123456为密码
/usr/local/apache/bin/htpasswd -b /usr/local/gerrit/conf/gerrit.password user 123456
2、Gerrit配置(/usr/local/gerrit/etc/gerrit.config)
① 配置访问地址:
canonicalWebUrl 参数值修改为将要在浏览器访问的地址(Nginx代理地址),比如当前访问Gerrit地址为http://192.168.33.10/,那么修改为http://192.168.33.10/
[gerrit]
basePath = git # 默认值就好
serverId = 073f4b5f-94a5-4f08-907a-bb1039c14bec # 默认值就好
canonicalWebUrl = http://192.168.0.96:81/ # 对外的访问地址
② 邮箱配置
[sendemail]
smtpServer = smtp.exmail.qq.com # 邮件发送服务器地址
smtpServerPort = 465 # 邮件发送服务器端口
smtpEncryption = ssl # 加密方式
smtpUser = ******@pyhtech.cn # 发件人邮箱
smtpPass = ****** # 发件人邮箱地址
sslVerify = false # SSL验证
from = ******@pyhtech.cn # 发件人
③ 服务端口配置
[httpd]
listenUrl = http://*:8089/ # gerrit服务的端口号配置,默认是8080,如果有冲突可更换
注意:第一个登录Gerrit的用户默认为超级管理员用户!
Nginx有代理80端口,我这里的代理是81端口。访问地址:http://192.168.0.96:81/,结果如下:
录入刚刚使用Apache创建的认证用户名和密码,登录进入
如上图,安装完毕!