Reviewboard in a container
Preparation
- Create a database and a database user on a MariaDB/MySQL server, grant all privileges on all tables of that database to that user
- If you want to inject custom CA certificates for repository access, create a volume, put these certificates (use the extension .ext) into and mount it to
/usr/local/share/ca-certificates/
of the container when starting it.
Example Start script
docker run \
-d \
--rm \
--name reviews \
-p 8080:80 \
-e DBHOST=10.8.10.5 \
-e DBNAME=reviewboard \
-e DBUSER=reviewboard \
-e DBPASS=test123 \
-e ADMINPASS=test123 \
-e SITEROOT=reviews \
-v RB_CERTS:/usr/local/share/ca-certificates/ \
wollud1969/reviewboard
Reverse Proxy configuration
<VirtualHost 0.0.0.0:443>
ServerName ...
ServerAlias ...
CustomLog /usr/local/apache2/logs/access.log combined
ErrorLog /usr/local/apache2/logs/error.log
<Location /reviews/>
ProxyPass "http://servicehost:8082/reviews/" nocanon
ProxyPassReverse "http://servicehost:8082/reviews/"
ProxyPreserveHost On
RequestHeader set X-Forwarded-Proto "https"
</Location>
SSLCertificateKeyFile ...
SSLCertificateFile ...
SSLCACertificateFile ...
SSLEngine on
</VirtualHost>
The Location
shall match to the SITEROOT
set when starting the container.
Description
Languages
Shell
50.9%
Dockerfile
49.1%