Run a docker container for Bugzilla. The image will install apache2/bugzilla/msmtp and setup bugzilla to run as localhost. It will remove the default localhost (html) and create a symbolic link to /var/www/html for bugzilla. The dockerfile will disable the default and enable the bugzilla.conf which is included. It will also enable cgi, headers, and expires and a start script that will run the final ./checksetup/pl to complete the installation.
You can uncomment any of the DEFAULT variables and the sed execution to simply substitute values via the command line during docker run. By default apache runs as apache so you can change ownership to apache to use the DEFAULT variable to set the group and owner to www-data.
For my case I am upgrading and existing installation of bugzilla and I am passing in three different conf files at run time using a -v option. For most cases you can use pass in various environment varibles.
docker run -d -p 80:80 --name bugzilla \
-v /tmp/msmtprc:/etc/msmtprc:ro \
-e MYSQL_DB=<database> -e MYSQL_USER=<user> \
-e MYSQL_PWD=<password> achild/bugzilla
1- Update the 'start' file with your DB server parameters and uncomment the Sed lines. For those not familiar with the Sed syntax: uncomment from the line beginning with 'sed in place' to the one (included) starting with 'SED'.
2 - Uncomment the following line in the docker file: 'RUN ./checksetup.pl'
3 - Build the image, 'docker build . -t bugzilla'
4 - Enjoy your Bugzilla Docker image !
I would like to provision this in AWS Container Service and have the database reside in AWS RDS using PostgreSQL. If anyone done this before, would you be able to give us some pointer? We will be provisioning this setup and if anyone want to know our experience then let us know.