如何在Linux上部署gerrit 服务

如何在Linux上部署gerrit 服务,第1张

1、安装ubuntu的时候可选包要选择上openSSH,如果没有选择的话,系统安装完成后手工安装openSSH服务

2、(挪至第7步)

3、安装java 运行环境,大概需要100M的内容:sudo apt-get install openjdk-6-jre-headless

4、安装邮件服务:postfixsudo apt-get install postfix

注意,安装过程中会提示输入主机名,gemfield此处输入的是 domain_name。

5、安装git服务sudo aptitude install git-core git-doc

6、创建gerrit用户:

sudo adduser gerrit

sudo su gerrit

cd ~

7、下载gerrit包,这次编辑时gerrit的版本是2.8.0(最新版本)

gerrit@CivilNet:~$ wget http://gerrit-releases.storage.googleapis.com/gerrit-2.8.war

--2014-01-15 10:30:33-- http://gerrit-releases.storage.googleapis.com/gerrit-2.8.war

Resolving gerrit-releases.storage.googleapis.com (gerrit-releases.storage.googleapis.com)... 74.125.128.132, 2404:6800:4005:c00::84

Connecting to gerrit-releases.storage.googleapis.com (gerrit-releases.storage.googleapis.com) 74.125.128.132 :80... connected.

HTTP request sent, awaiting response... 200 OK

Length: 35675319 (34M) [binary/octet-stream]

Saving to: `gerrit-2.8.war'

100%[======================================================================================================================================================>] 35,675,319 10.6M/s in 3.4s

2014-01-15 10:30:37 (10.1 MB/s) - `gerrit-2.8.war' saved [35675319/35675319]

8、安装gerrit:

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

9、安装过程中会出现交互式的提问,除非gemfield本文明确指定,否则都是默认值。Create ‘/home/gerrit/review_site’ [Y/n]? y

Location of Git repositories [git]: 回车

Database server type [H2/?]: 回车

Authentication method [OPENID/?]: http 回车

SMTP server hostname [localhost]: 回车

SMTP server port [(default)]: 回车

SMTP encryption [NONE/?]: 回车

SMTP username : gemfield

gemfield’s password:

confirm password:

Run as [gerrit]:回车

Java runtime [/usr/lib/jvm/java-6-openjdk/jre]: 回车

Copy gerrit.war to /home/gerrit/review_site/bin/gerrit.war [Y/n]:y

Listen on address [*]: 回车

Listen on port [29418]: 回车

Gerrit Code Review is not shipped with Bouncy Castle Crypto v144If available, Gerrit can take advantage of featuresin the library, but will also function without it.Download and install it now [Y/n]? y

Behind reverse proxy [y/N]? y

Use SSL (https://) [y/N]? y

Listen on address [*]: 回车

Listen on port [8080]: 回车

Canonical URL [http://*:8080/]: http://domain_name/code/ 回车

10、配置完上面的步骤后,gerrit服务会自动启动。以后可以使用如下命令手工启动:/home/gerrit/review_site/bin/gerrit.sh start

11、通过如下步骤设置gerrit服务开机自启动:

sudo ln -snf /home/gerrit/review_site/bin/gerrit.sh /etc/init.d/gerrit.sh

sduo ln -snf /etc/init.d/gerrit.sh /etc/rc2.d/S90gerrit

sduo ln -snf /etc/init.d/gerrit.sh /etc/rc3.d/S90gerrit

服务自动启动脚本/etc/init.d/gerrit.sh需要通过/etc/default/gerritcodereview文件来提供一些配置。该文件的内容为:

GERRIT_SITE=/home/gerrit/review_site

NO_START=0

12、配置apache的反向代理:

ProxyRequests Off

ProxyVia Off

ProxyPreserveHost on

Order deny,allow

Allow from all

ProxyPass /code/ http://domain_name:8080/

AuthType Basic

AuthName "CivilNet Code Review"

Require valid-user

AuthUserFile /home/gerrit/review_site/etc/gerrit.password

13、添加http认证用户(e.g. gemfield):

htpasswd -m /home/gerrit/review_site/etc/gerrit.password gemfield

New password:

Re-type new password:

14、可以通过浏览器访问 http://domain_name/code/ 来使用gerrit了。

15、第一个注册的人就是管理员哦,比如gemfield。

16、现在你也可以去 /home/gerrit/review_site/etc/gerrit.config文件中查看刚才的配置内容了。

补充:这样配置好的gerrit默认只有管理员有权限创建工程,这有点不方便,可以通过下面的方式更改。在 /home/gerrit/review_site/etc/gerrit.config文件中添加以下内容:

[repository "*"]

createGroup = Administrators

createGroup = Registered Users

ownerGroup = Registered Users

经过gemfield的上述步骤,gerrit服务就成功部署起来了,但是怎样在gerrit服务上工作,还得看gemfield的下一篇文章:《使用gerrit服务》

备注:在gerrit2.1版本时本文内容由Gemfield25.0 首先发布于CivilNet Blog. 在gerrit 2.5版本时有所更新。 现在最新的版本是gerrit 2.8 。

我的也没有admin这个菜单项,不知道是不是新版的没有了这个选项,还有好像新版不能通过ssh直接运行gsql了,会报没有权限访问数据库。。。

添加用户得看你装gerrit的时候用的是什么认证方式,如果是采用http,apache2反向代理的话,可以在服务器上运行:htpasswd <gerrit安装目录>/etc/passwords username,passwords这个文件还需要跟你的/etc/apache2/http.conf底下的配置指的同一个文件。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11651302.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-17
下一篇2023-05-17

发表评论

登录后才能评论

评论列表(0条)

    保存