Gerrit配置(http+postgresql+nginx)

来源:互联网 发布:java unsafe类 编辑:程序博客网 时间:2024/05/17 06:19

系统: ubuntu 14.04 LTS


安装git:
[kris@e:~]$sudo apt-get install git


安装open-jdk:
要求最低1.7版本。
[kris@e:~]$sudo apt-get install openjdk-7-jre


安装PostgreSQL:
Gerrit支持H2,MySQL, PostgreSQL,这里使用PostgreSQL.
[kris@e:~]$sudo apt-get install postgresql
初次安装后,会默认生成名为postgres的Linux系统用户、数据库和数据库用户(作为数据库管理员)
//命令行方式操作postgresql
[kris@e:~]$sudo -u postgres createuser -RDIElPS kris[kris@e:~]$sudo -u postgres psqlpostgres=# \password kris(input password twice)//输入kris对应的数据库密码,这里是123456[kris@e:~]$sudo -u postgres createdb -E UTF-8 -O kris reviewdb添加完毕后可以检查数据库[kris@e:~]$ sudo -u postgres psqlpsql (9.3.11)Type "help" for help.postgres=# \l                                  List of databases   Name    |  Owner   | Encoding |   Collate   |    Ctype    |   Access privileges   -----------+----------+----------+-------------+-------------+----------------------- postgres  | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 |  reviewdb  | kris     | UTF8     | en_US.UTF-8 | en_US.UTF-8 |  template0 | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =c/postgres          +           |          |          |             |             | postgres=CTc/postgres template1 | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =c/postgres          +           |          |          |             |             | postgres=CTc/postgres(4 rows)


下载gerrit:

版本列表: http://gerrit-releases.storage.googleapis.com/index.html

我下的是: https://gerrit-releases.storage.googleapis.com/gerrit-2.11.war


添加gerrit2账户:

[kris@e:~]$sudo adduser gerrit2

[kris@e:~]$su gerrit2


安装 gerrit:

大写的字母表示默认选项,回车表示不改变。这些配置也可以在安装完成后在~/review/etc/gerrit.config文件中修改。

gerrit2@e:~$ java -jar gerrit-2.11.war init -d reviewUsing secure store: com.google.gerrit.server.securestore.DefaultSecureStore*** Gerrit Code Review 2.11****** Git Repositories***Location of Git repositories   [git]: /home/gerrit2/git*** SQL Database***Database server type           [h2]: postgresqlServer hostname                [localhost]:Server port                    [(postgresql default)]:/*这里要和创建数据库输入的账户/密码一致*/Database name                  [reviewdb]:Database username              [gerrit2]:gerrit2's password             :              confirm password :*** Index***Type                           [LUCENE/?]:The index must be rebuilt before starting Gerrit:  java -jar gerrit.war reindex -d site_path*** User Authentication***/*使用HTTP认证,OPENID需要服务器连接互联网,还可以使用LDAP认证服务*/Authentication method          [OPENID/?]: httpGet username from custom HTTP header [y/N]?SSO logout URL                 :*** Review Labels***Install Verified label         [y/N]?*** Email Delivery***/*用来发mail的,可以不用配置。*/SMTP server hostname           [localhost]:SMTP server port               [(default)]:SMTP encryption                [NONE/?]:SMTP username                  :*** Container Process***Run as                         [gerrit2]:Java runtime                   [/usr/lib/jvm/java-7-openjdk-amd64/jre]:Copy gerrit-2.11.war to /home/gerrit2/review/bin/gerrit.war [Y/n]?Copying gerrit-2.11.war to /home/gerrit2/review/bin/gerrit.war*** SSH Daemon***Listen on address              [*]:Listen on port                 [29418]:Gerrit Code Review is not shipped with Bouncy Castle Crypto SSL v151  If available, Gerrit can take advantage of features  in the library, but will also function without it.Download and install it now [Y/n]?Downloading http://www.bouncycastle.org/download/bcpkix-jdk15on-151.jar ...Generating SSH host key ... rsa(simple)... done*** HTTP Daemon***/*使用nginx反向代理gerrit*/Behind reverse proxy           [y/N]? yProxy uses SSL (https://)      [y/N]?Subdirectory on proxy server   [/]:Listen on address              [*]: 127.0.0.1Listen on port                 [8081]:Canonical URL                  [http://127.0.0.1/]:*** Plugins***Installing plugins.Install plugin download-commands version v2.11 [y/N]?Install plugin reviewnotes version v2.11 [y/N]?Install plugin singleusergroup version v2.11 [y/N]?Install plugin replication version v2.11 [y/N]?Install plugin commit-message-length-validator version v2.11 [y/N]?Initializing plugins.No plugins found with init steps.Initialized /home/gerrit2/review

查看和修改配置可在~/review/etc/gerrit.conf中操作:
gerrit2@e:~$ cat review/etc/gerrit.config
[gerrit]    basePath = /home/gerrit2/git    canonicalWebUrl = http://127.0.0.1/[database]    type = postgresql    hostname = localhost    database = reviewdb    username = gerrit2[index]    type = LUCENE[auth]    type = HTTP[sendemail]    smtpServer = localhost[container]    user = gerrit2    javaHome = /usr/lib/jvm/java-7-openjdk-amd64/jre[sshd]    listenAddress = *:29418[httpd]    listenUrl = proxy-http://127.0.0.1:8081/[cache]    directory = cachegerrit2@e:~$


安装nginx:

gerrit2@e:~$sudo apt-get install nginx
编辑配置文件 /etc/nginx/site-enable/default

gerrit2@e:~$ vim /etc/nginx/sites-enabled/defaultserver {        listen 80;        server_name localhost;        location / {                auth_basic              "Gerrit2 Code Review";                auth_basic_user_file    /home/gerrit2/htpasswd.conf;                proxy_pass              http://127.0.0.1:8081;                proxy_set_header        X-Forwarded-For $remote_addr;                proxy_set_header        Host $host;        }        location /login/ {                proxy_pass              http://127.0.0.1:8081;                proxy_set_header        X-Forwarded-For $remote_addr;                proxy_set_header        Host $host;        }}



5. 设置第一次登陆gerrit的账号密码
#htpasswd -c htpasswd.conf kris    123456    
如果没有htpasswd命令请自行安装。


编辑文件 /etc/default/gerritcodereview
GERRIT_SITE=/home/gerrit2/review


启动gerrit:
gerrit2@e:~$ ./review/bin/gerrit.sh start
Starting Gerrit Code Review: OK

                                                                                                                                                                          *


网页登陆192.168.1.120,输入账号密码就能正常弹出gerrit网页。


参考
http://openwares.net/linux/gerrit2_setup.html
http://blog.csdn.net/dongwuming/article/details/9228091
http://www.myexception.cn/operating-system/1935035.html
http://www.360doc.com/content/13/0916/16/3038654_314851965.shtml

http://blog.csdn.net/ganshuyu/article/details/8978614

Starting Gerrit Code Review: FAILED

http://codingbee.net/tutorials/gerrit/gerrit-installation-setup/

Failed to lookup provider 'shm' for 'slotmem':

https://bz.apache.org/bugzilla/show_bug.cgi?id=52841


1 0
原创粉丝点击