Coder Social home page Coder Social logo

docker-gerrit's Introduction

Gerrit Docker image

The Gerrit code review system with PostgreSQL and OpenLDAP integration supported.

Versions

openfrontier/gerrit:latest -> 2.12

openfrontier/gerrit:2.11.x -> 2.11.6

openfrontier/gerrit:2.10.x -> 2.10.6

Container Quickstart

  1. Initialize and start gerrit.
`$ docker run -d -p 8080:8080 -p 29418:29418 openfrontier/gerrit`
  1. Open your browser to http://:8080

Use another container as the gerrit site storage.

  1. Create a volume container.
`docker run --name gerrit_volume openfrontier/gerrit echo "Gerrit volume container."`
  1. Initialize and start gerrit using volume created above.
`docker run -d --volumes-from gerrit_volume -p 8080:8080 -p 29418:29418 openfrontier/gerrit`

Use local directory as the gerrit site storage.

  1. Create a site directory for the gerrit site.
`mkdir ~/gerrit_volume`
  1. Initialize and start gerrit using the local directory created above.
`docker run -d -v ~/gerrit_volume:/var/gerrit/review_site -p 8080:8080 -p 29418:29418 openfrontier/gerrit`

Install plugins on start.

When calling gerrit init --batch, it is possible to list plugins to be installed with --install-plugin=<plugin_name>. This can be done using the GERRIT_INIT_ARGS environment variable. See Gerrit Documentation for more information.

Extend this image.

Similarly to the Postgres image, if you would like to do additional configuration mid-script, add one or more *.sh scripts under /docker-entrypoint-init.d. This directory is created by default. Scripts in /docker-entrypoint-init.d are run after gerrit has been initialized, but before any of the gerrit config is customized, allowing you to programmatically override environment variables in entrypoint scripts.

Run dockerized gerrit with dockerized PostgreSQL and OpenLDAP.

#####All attributes in gerrit.config ldap section are supported.

#Start postgres docker
docker run \
--name pg-gerrit \
-p 5432:5432 \
-e POSTGRES_USER=gerrit2 \
-e POSTGRES_PASSWORD=gerrit \
-e POSTGRES_DB=reviewdb \
-d postgres
#Start gerrit docker
docker run \
--name gerrit \
--link pg-gerrit:db \
-p 8080:8080 \
-p 29418:29418 \
-e WEBURL=http://<your.site.url>:8080 \
-e DATABASE_TYPE=postgresql 
-e AUTH_TYPE=LDAP \
-e LDAP_SERVER=<ldap-servername> \
-e LDAP_ACCOUNTBASE=<ldap-basedn> \
-d openfrontier/gerrit

Setup sendemail options.

#####Some basic attributes in gerrit.config sendmail section are supported.

#Start gerrit docker with sendemail supported.
#All SMTP_* attributes are optional.
#Sendemail function will be disabled if SMTP_SERVER is not specified.
docker run \
--name gerrit \
-p 8080:8080 \
-p 29418:29418 \
-e WEBURL=http://<your.site.url>:8080 \
-e SMTP_SERVER=<your.smtp.server.url> \
-e SMTP_SERVER_PORT=25 \
-e SMTP_ENCRYPTION=tls \
-e SMTP_USER=<smtp user> \
-e SMTP_PASS=<smtp password> \
-e SMTP_CONNECT_TIMEOUT=10sec \
-e SMTP_FROM=USER \
-d openfrontier/gerrit

Setup user options.

#####All attributes in gerrit.config user section are supported.

#Start gerrit docker with user info provided.
#All USER_* attributes are optional.
docker run \
--name gerrit \
-p 8080:8080 \
-p 29418:29418 \
-e WEBURL=http://<your.site.url>:8080 \
-e USER_NAME=gerrit \
-e USER_EMAIL=<[email protected]> \
-d openfrontier/gerrit

Sample operational scripts

Sample scripts to create or destroy this Gerrit container are located at openfrontier/gerrit-docker project.

A Jenkins docker image with some sample scripts to integrate with this Gerrit image can be found here.

There's an upper project which privdes sample scripts about how to use this image and a Jenkins image to create a Gerrit-Jenkins integration environment.

Sync timezone with the host server.

docker run -d -p 8080:8080 -p 29418:29418 -v /etc/localtime:/etc/localtime:ro openfrontier/gerrit

docker-gerrit's People

Contributors

corfr avatar garethjevans avatar kalbasit avatar marcelhuberfoo avatar mengzhaopeng avatar pchalamet avatar thinkernel avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.