docker執行gerrit(程式碼審查工具)
gerrit是什麼?
Gerrit,一種免費、開放原始碼的程式碼審查軟體,使用網頁介面。
gerrit背景
Gerrit,一種免費、開放原始碼的程式碼審查軟體,使用網頁介面。利用網頁瀏覽器,同一個團隊的軟體程式設計師,可以相互審閱彼此修改後的程式程式碼,決定是否能夠提交,退回或者繼續修改。它使用Git作為底層版本控制系統。它分支自Rietveld,作者為Google公司的Shawn Pearce,原先是為了管理Android計劃而產生。
軟體歷史
這個軟體的名稱,來自於荷蘭設計師赫裡特·裡特費爾德(Gerrit Rietveld)。最早它是由Python寫成,在第二版後,改成用Java與SQL
gerrit可以組成持續部署關鍵性的一環,和jenkins,gitlab的git服務組成,還可以與sonarqube程式碼質量報告聚合工具一起使用。
gitlab安裝教程: https://www.jianshu.com/p/c98e71ee7958
sonarqube安裝教程: https://www.jianshu.com/p/9080642d4179
sonarqube使用教程: https://www.jianshu.com/p/f9d31148ce59
在生產環境中使用Docker建立Gerrit
version: '3' services: gerrit: image: gerritcodereview/gerrit ports: - "29418:29418" - "8010:8080" depends_on: - ldap volumes: - /usr/local/docker/gerrit/etc:/var/gerrit/etc - /usr/local/docker/gerrit/git:/var/gerrit/git - /usr/local/docker/gerrit/db:/var/gerrit/db - /usr/local/docker/gerrit/index:/var/gerrit/index - /usr/local/docker/gerrit/cache:/var/gerrit/cache environment: - CANONICAL_WEB_URL=http://localhost #entrypoint: /entrypoint.sh init ldap: image: osixia/openldap ports: - "389:389" - "636:636" environment: - LDAP_ADMIN_PASSWORD=secret volumes: - /usr/local/docker/gerrit/ldap/var:/var/lib/ldap - /usr/local/docker/gerrit/ldap/etc:/etc/ldap/slapd.d ldap-admin: image: osixia/phpldapadmin ports: - "6443:443" environment: - PHPLDAPADMIN_LDAP_HOSTS=ldap
/usr/local/docker/gerrit/etc/gerrit.config 建立配置檔案
[gerrit] basePath = git canonicalWebUrl = http://localhost [index] type = LUCENE [auth] type = ldap gitBasicAuth = true [ldap] server = ldap://ldap username=cn=admin,dc=example,dc=org accountBase = dc=example,dc=org accountPattern = (&(objectClass=person)(uid=${username})) accountFullName = displayName accountEmailAddress = mail [sendemail] smtpServer = localhost [sshd] listenAddress = *:29418 [httpd] listenUrl = http://*:8080/ [cache] directory = cache [container] user = root
/usr/local/docker/gerrit/etc/secure.config 建立配置檔案
[ldap]
password = secret
初始化環境
1.修改docker-compose.yml
把#entrypoint: /entrypoint.sh init註釋放開!
2.執行命令: docker-compose up gerrit
後臺啟動
1.把#entrypoint: /entrypoint.sh init註釋掉!
2.再輸入命令: docker-compose up -d
配置Gerrit的管理員賬號
- 訪問:https:ip:6443
2.登入
賬號:cn=admin,dc=example,dc=org
密碼:secret
3.建立gerrit賬號
1.點選Create a child entry
2.選擇賬號模板
3.填入賬號資訊
引數為:
Given Name: Gerrit
Last Name: Admin
Common Name: Gerrit Admin
User ID: gerritadmin
Email: gerritadmin@localdomain
Password: secret
4.提交到LDAP (commit the changes to LDAP)
登入 Gerrit
1.輸入地址
我這邊配置的地址是:http:ip:8010
2.登入
3.登入成功
到這了就成功了!