拉取docker image
docker pull gerritcodereview/gerrit:3.13.1
创建配置文件存放目录和修改权限
cd /opt/stack/gerrit/
mkdir -p config/etc
sudo chown charleye:docker config -R
sudo chmod 775 config -R
gerrit.config文件的内容
[gerrit]
canonicalWebUrl = https://gerrit.abitacc.com/
basePath = git
[container]
user = gerrit
[index]
type = lucene
[auth]
type = ldap
gitBasicAuth = true
gitBasicAuthPolicy = HTTP
[ldap]
server = ldaps://ldap.abitacc.com:636
username = cn=admin,dc=abitacc,dc=com
accountBase = ou=people,dc=abitacc,dc=com
accountPattern = (&(objectClass=person)(uid=${username}))
accountFullName = displayName
accountEmailAddress = mail
groupBase = ou=people,dc=abitacc,dc=com
groupMemberPattern = (&(objectClass=groupOfUniqueNames)(uniqueMember=${dn}))
groupName = cn
[receive]
enableSignedPush = false
[sendemail]
smtpServer = localhost
[sshd]
listenAddress = *:29418
[httpd]
listenUrl = proxy-http://*:8080
[cache]
directory = cache
[plugins]
checkFrequency = 5sec
allowRemoteAdmin = true
[lfs]
plugin = lfs
[pack]
threads = 0
secure.config文件的内容
[auth]
registerEmailPrivateKey = T0/M6tEzB3dJ8nPgC3WPjuO3tfsKGarTpO0=
[ldap]
password = XXXXXXXXX
docker compose.yaml
services:
gerrit:
container_name: gerrit
image: gerritcodereview/gerrit:3.13.1
restart: unless-stopped
hostname: gerrit
ports:
- 29418:29418
- 8090:8080
networks:
- default
volumes:
- git_vol:/var/gerrit/git
- index_vol:/var/gerrit/index
- cache_vol:/var/gerrit/cache
- db_vol:/var/gerrit/db
- plugin_vol:/var/gerrit/plugins
- $PWD/config/etc:/var/gerrit/etc
environment:
- CANONICAL_WEB_URL=https://gerrit.abitacc.com/
- HTTPD_LISTEN_URL=proxy-http://*:8080
volumes:
git_vol:
name: gerrit_git
index_vol:
name: gerrit_index
cache_vol:
name: gerrit_cache
db_vol:
name: gerrit_db
plugin_vol:
name: gerrit_plugin
networks:
default:
external: true
name: caddy_default