Add official support for Docker.

Review Request #11476 — Created Feb. 19, 2021 and submitted

Information

Review Board
release-3.0.x

Reviewers

This introduces our first official support for a Review Board Docker
image. This is carefully crafted to provide a full Review Board
environment with all necessary packages and with configuration options
that should meet the needs of our customers.

Our Docker image is based on Ubuntu 20.04 LTS, which offers 10 years of
security updates. It uses Gunicorn as the WSGI server, leveraging the
new reviewboard.wsgi module, and supports MySQL/MariaDB or Postgres
databases.

The image also comes pre-installed with Power Pack and Review Bot
extensions. Additional extensions can be installed by creating a new
Dockerfile that inherits from ours, installing any extensions or other
packages needed by the customer. This helps give consumers the control
they need without requiring that they fork ours.

Documentation has been added to the Admin Guide on using Docker for
installation. This covers basic usage via docker run, more
comprehensive architectures using docker-compose (which we include
sample files for), launch-time configuration options, and how to extend
the image to include other extensions.

Currently, this Dockerfile is geared toward Review Board 3.0.21 support.
Additional work will be done on the release-4.0.x branch to bring
compatibility with Review Board 4.0 RC1 and Python 3.

Built the Docker image and ran it. Hooked it up to Nginx and verified
I had a working setup.

Used both the MySQL and Postgres docker-compose.yaml files and deployed
a whole infrastructure. Logged in, verified I could add repositories and
post review requests.

Built the docs. Checked for build errors, bad links, and spelling errors.

Ran through the examples in the docs for building custom images with
custom extensions, ensuring they worked as expected.

Tested the options to the build.py for the Dockerfile, including
uploading a build to our repository on Docker Hub
(https://hub.docker.com/r/beanbag/reviewboard/)

This will likely need a lot more real-world testing in real-world
deployments.

Summary ID
Add official support for Docker.
This introduces our first official support for a Review Board Docker image. This is carefully crafted to provide a full Review Board environment with all necessary packages and with configuration options that should meet the needs of our customers. Our Docker image is based on Ubuntu 20.04 LTS, which offers 10 years of security updates. It uses Gunicorn as the WSGI server, leveraging the new `reviewboard.wsgi` module, and supports MySQL/MariaDB or Postgres databases. The image also comes pre-installed with Power Pack and Review Bot extensions. Additional extensions can be installed by creating a new `Dockerfile` that inherits from ours, installing any extensions or other packages needed by the customer. This helps give consumers the control they need without requiring that they fork ours. Documentation has been added to the Admin Guide on using Docker for installation. This covers basic usage via `docker run`, more comprehensive architectures using `docker-compose` (which we include sample files for), launch-time configuration options, and how to extend the image to include other extensions. Currently, this Dockerfile is geared toward Review Board 3.0.21 support. Additional work will be done on the `release-4.0.x` branch to bring compatibility with Review Board 4.0 RC1 and Python 3.
6b519ea7fe1084806017b20aa28d838230480ab2
Description From Last Updated

Bug 4435

daviddavid

E402 module level import not at top of file

reviewbotreviewbot

This seems like it's probably not what you want.

daviddavid

And here too?

daviddavid

Same in this file.

daviddavid

E402 module level import not at top of file

reviewbotreviewbot
Checks run (1 failed, 1 succeeded)
flake8 failed.
JSHint passed.

flake8

david
  1. 
      
  2. Show all issues

    Bug 4435

  3. Show all issues

    This seems like it's probably not what you want.

  4. Show all issues

    And here too?

  5. Show all issues

    Same in this file.

  6. 
      
chipx86
Review request changed
Change Summary:

Fixed up the example docker-compose files to not list my domain for the examples.

Commits:
Summary ID
Add official support for Docker.
This introduces our first official support for a Review Board Docker image. This is carefully crafted to provide a full Review Board environment with all necessary packages and with configuration options that should meet the needs of our customers. Our Docker image is based on Ubuntu 20.04 LTS, which offers 10 years of security updates. It uses Gunicorn as the WSGI server, leveraging the new `reviewboard.wsgi` module, and supports MySQL/MariaDB or Postgres databases. The image also comes pre-installed with Power Pack and Review Bot extensions. Additional extensions can be installed by creating a new `Dockerfile` that inherits from ours, installing any extensions or other packages needed by the customer. This helps give consumers the control they need without requiring that they fork ours. Documentation has been added to the Admin Guide on using Docker for installation. This covers basic usage via `docker run`, more comprehensive architectures using `docker-compose` (which we include sample files for), launch-time configuration options, and how to extend the image to include other extensions. Currently, this Dockerfile is geared toward Review Board 3.0.21 support. Additional work will be done on the `release-4.0.x` branch to bring compatibility with Review Board 4.0 RC1 and Python 3.
f5fd9b832772758cafcb9c7f8d4aa482d3e92a4f
Add official support for Docker.
This introduces our first official support for a Review Board Docker image. This is carefully crafted to provide a full Review Board environment with all necessary packages and with configuration options that should meet the needs of our customers. Our Docker image is based on Ubuntu 20.04 LTS, which offers 10 years of security updates. It uses Gunicorn as the WSGI server, leveraging the new `reviewboard.wsgi` module, and supports MySQL/MariaDB or Postgres databases. The image also comes pre-installed with Power Pack and Review Bot extensions. Additional extensions can be installed by creating a new `Dockerfile` that inherits from ours, installing any extensions or other packages needed by the customer. This helps give consumers the control they need without requiring that they fork ours. Documentation has been added to the Admin Guide on using Docker for installation. This covers basic usage via `docker run`, more comprehensive architectures using `docker-compose` (which we include sample files for), launch-time configuration options, and how to extend the image to include other extensions. Currently, this Dockerfile is geared toward Review Board 3.0.21 support. Additional work will be done on the `release-4.0.x` branch to bring compatibility with Review Board 4.0 RC1 and Python 3.
6b519ea7fe1084806017b20aa28d838230480ab2
Bugs:

Checks run (1 failed, 1 succeeded)

flake8 failed.
JSHint passed.

flake8

david
  1. Ship It!
    1. Caveat: I don't really know anything about docker

  2. 
      
chipx86
Review request changed
Status:
Completed
Change Summary:
Pushed to release-3.0.x (3016afc)