小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

Ubuntu環(huán)境上使用Nginx搭建Gerrit

 xiaofenglib 2020-09-05

Gerrit,一種開放源代碼的代碼審查軟件,使用網(wǎng)頁界面。利用網(wǎng)頁瀏覽器,同一個(gè)團(tuán)隊(duì)的軟件開發(fā)者,可以相互審閱彼此修改后的代碼,決定是否能夠提交,回退或是繼續(xù)修改。它使用版本控制系統(tǒng)Git作為底層,已經(jīng)被廣泛的應(yīng)用到了各大公司的代碼 review中。對(duì)于不太習(xí)慣使用git diff/difftool來查看兩個(gè)相鄰提交差異的同學(xué)來講,gerrit也是一個(gè)不錯(cuò)的選擇,當(dāng)然,這樣顯然是大材小用了。不管如何,gerrit已經(jīng)像git一樣成為程序員必備的技能了。對(duì)于想學(xué)習(xí)而又沒有g(shù)errit環(huán)境的同學(xué),可以參考本文在ubuntu電腦上快速搭建一個(gè)。

本文將基于以下環(huán)境使用nginx實(shí)現(xiàn)反向代理來搭建一個(gè)gerrit服務(wù)器:

  • ubuntu版本: 16.04
  • kernel版本: Linux version 4.4.0-137-generic
  • 服務(wù)器IP地址:104.238.167.38

注意:軟件版本的不同有可能會(huì)導(dǎo)致即使相同的配置,最終不能正常工作。如果對(duì)相關(guān)軟件不太熟悉的,請(qǐng)務(wù)必選用與本文一致的軟件版本。

一、下載安裝必要的軟件

1.1 安裝java環(huán)境

gerrit是一個(gè)java軟件,因此需要安裝JDK,這里我們使用openjdk-8。安裝命令如下:

sudo add-apt-repository ppa:openjdk-r/ppa && sudo apt-get update && sudo apt-get install openjdk-8-jdk -y

1.2 安裝nginx

Nginx是一款輕量級(jí)的web服務(wù)器軟件,它將提供供我們?cè)L問的gerrit服務(wù)器。安裝命令如下:

sudo apt-get install nginx -y

安裝成功后在你的瀏覽器中輸入服務(wù)器的IP地址,如果看到下面的顯示,則表明Nginx已正確安裝。

nginx

1.3 安裝密碼管理器htpasswd

htpasswd用于建立和更新登陸gerrit服務(wù)器的存儲(chǔ)用戶名/密碼的文本文件。它是apache工具集下的一個(gè)工具,因此我們需要安裝apache-utils。安裝命令如下:

sudo apt-get install apache2-utils -y

1.4 下載gerrit安裝包

安裝包可以直接點(diǎn)擊 gerrit release note頁面下載 ,或者直接使用下面命令下載:

wget https://gerrit-releases.storage./gerrit-2.15.4.war

二、配置gerrit

到目前為止安裝gerrit依賴的所有軟件已經(jīng)準(zhǔn)備完畢,下面我們來開始安裝。在安裝前,需要說明一點(diǎn)的是:安裝gerrit最好在服務(wù)器上新建一個(gè)user,這個(gè)賬戶只用來安裝、配置并啟動(dòng)gerrit服務(wù),因此,不需要賦給它更多的權(quán)限(比如root權(quán)限),而修改nginx的配置文件需要使用具有root權(quán)限的賬戶。因此,下文中涉及到修改gerrit配置文件,請(qǐng)切換回gerrit專用賬戶;其他操作(比如修改nginx配置文件),請(qǐng)使用具有root權(quán)限的賬戶。

2.1 創(chuàng)建gerrit專用賬戶

使用下面的命令創(chuàng)建一個(gè)gerrit專用賬戶,賬戶名字就叫做gerrit:

sudo adduser gerritsu gerritcd ~

2.3 安裝gerrit

接著使用下面的命令來安裝gerrit(注意,這里應(yīng)該使用gerrit專用賬戶)

java -jar ./gerrit-2.15.4.war init -d ~/gerrit_site

安裝過程很簡單,只需要使用默認(rèn)的配置,一路回車下去就行了,只是在Authentication method方式時(shí)輸入http。

2.4 修改gerrit配置文件

安裝的時(shí)候我們基本選擇了默認(rèn)配置,但是其中有兩項(xiàng)是需要修改的。gerrit的配置文件具體路徑為:/home/gerrit/gerrit_site/etc/gerrit.config

完整的文件如下,我們需要只需要修改第4行和第28行即可:

1 [gerrit] 2 basePath = git 3 serverId = 2d5e17e4-a507-424d-b5cd-f63d8e08e6fd 4 canonicalWebUrl = http://104.238.167.38:8085/ 5 [database] 6 type = h2 7 database = /home/gerrit/gerrit_site/db/ReviewDB 8 [noteDb 'changes'] 9 disableReviewDb = true 10 primaryStorage = note db 11 read = true 12 sequence = true 13 write = true 14 [index] 15 type = LUCENE 16 [auth] 17 type = HTTP 18 [receive] 19 enableSignedPush = false 20 [sendemail] 21 smtpServer = localhost 22 [container] 23 user = gerrit 24 javaHome = /usr/lib/jvm/java-8-openjdk-amd64/jre 25 [sshd] 26 listenAddress = *:29418 27 [httpd] 28 listenUrl = proxy-http://*:8085/ 29 [cache] 30 directory = cache

其中第4行表示要替換成你自己服務(wù)器的ip地址(104.238.167.38是我的服務(wù)器IP地址),端口號(hào)自己選擇一個(gè)當(dāng)前未被占用的即可。第28行意思是使用反向代理,端口號(hào)要和第4行的設(shè)置成一樣。

2.5 添加gerrit的nginx配置文件

接下來,需要為nginx添加gerrit的配置文件(注意,這里我們需要切換為擁有root權(quán)限的賬戶)。添加的目錄為:/etc/nginx/conf.d。在其下面新建一個(gè)文件命名為gerrit.conf,然后將下面內(nèi)容寫入該文件,并保存。

server {     listen *:358;     server_name localhost;     allow   all;     deny    all;     auth_basic 'Welcomme to Gerrit Code Review Site!';     auth_basic_user_file /home/gerrit/gerrit_site/etc/gerrit.passwd;     location / {        proxy_pass  http://127.0.0.1:8085;        proxy_set_header X-Forwarded-For $remote_addr;        proxy_set_header Host $host;     }   }

其中,listen表示nginx對(duì)外監(jiān)聽的端口號(hào),設(shè)置成任意一個(gè)未被占用的即可(我這里設(shè)置成了358)。proxy_pass這句里面的端口號(hào)應(yīng)該和gerrit配置文件(即2.4中的gerrit.config)里設(shè)置的一樣。

2.6 gerrit用戶賬號(hào)管理

下面我們使用htpasswd工具來建立和增加可登陸的gerrit賬號(hào)(注意,這里應(yīng)該使用gerrit專用賬戶)。

2.6.1 新建配置文件并添加用戶賬號(hào)

sudo htpasswd -c /home/gerrit/gerrit_site/etc/gerrit.passwd administrator

這里我們?cè)?code>/home/gerrit/gerrit_site/etc/目錄下新建了一個(gè)名為gerrit.passwd的密碼配置文件,并添加了一個(gè)名為administrator的用戶賬號(hào)。

2.6.2 增加用戶賬號(hào)

sudo htpasswd -m /home/gerrit/gerrit_site/etc/gerrit.passwd user1

使用-m參數(shù)表示添加一個(gè)賬戶。這里我們?cè)谏鲜雒艽a配置文件中添加了一個(gè)名為user1的用戶賬號(hào)。

2.7 重啟服務(wù)

2.7.1 重啟nginx

使用下列命令重啟nginx(注意,這里我們需要切換為擁有root權(quán)限的賬戶)

sudo /etc/init.d/nginx restart

2.7.2 重啟gerrit服務(wù)

重啟gerrit服務(wù)(注意,這里應(yīng)該使用gerrit專用賬戶)

/home/gerrit/gerrit_site/bin/gerrit.sh restart

然后,打開瀏覽器訪問104.238.167.38:358(IP地址即為服務(wù)器的IP,端口號(hào)應(yīng)為nginx監(jiān)聽的端口號(hào)),即可看到gerrit登陸界面:

gerrit_test

然后輸入賬號(hào)登陸后,如果顯示下面的畫面,證明一切配置正常,gerrit就可以正常使用了。

gerrit_login

注意,gerrit默認(rèn)第一次成功登陸的賬戶為gerrit服務(wù)器的管理員賬戶,它擁有整個(gè)gerrit系統(tǒng)的最大權(quán)限,包括但不限于新建project,新增group,配置所有用戶或者group對(duì)project的訪問、代碼下載、push和submit等權(quán)限,所以登陸的時(shí)候務(wù)必慎重!

三、問題調(diào)查

gerrit登陸出錯(cuò),有各種各樣的問題,請(qǐng)?jiān)囍葟囊韵滤悸房纯茨芊窠鉀Q:
1. 使用2.7.2提供的命令,重啟nginx,然后重新gerrit。如果重啟失敗,查看gerrit啟動(dòng)log,一般位于/home/gerrit/gerrit_site/logs/error_log。
2. 如果重啟成功,但是登陸失敗,請(qǐng)查看nginx的log,一般位于:/var/log/nginx目錄下。對(duì)于log中的錯(cuò)誤,可以自行g(shù)oogle解決。
3. 實(shí)在不行的話,可以考慮刪掉gerrit的安裝目錄,即/home/gerrit/gerrit_site/重新安裝。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多