Docker image for Mantis Bug Tracker https://www.mantisbt.org/
10K+
Docker image for Mantis Bug Tracker https://www.mantisbt.org/
There are some other alternative images exist already such as vimagick/mantisbt, xlrl/docker-mantisbt and a few others. Why do we need yet another image?
The reason is to combine all the useful features they have and add some missing ones. To list some:
admin service folderdocker-compose.yml file provided for getting started in one click!docker-compose.yml from this repo: wget https://raw.githubusercontent.com/okainov/mantisbt-docker/master/docker-compose.yamldocker-compose up -dlocalhost:8989/admin/install.php and follow installation instructions, default out-of-the-box values are good to use.
-- Ignore Config File Exists but Database does not warning and proceed installationadministrator/root (default credentials) and confugre whatever you need (typically you want to create your own Admin user and disable built-in "administrator" first)localhost:8989/admin/. Note: several warnings are expected to be "WARN" due to issues in MantisBT, such as magic quotes warning (#26964) and "folder outside of web root" warnings (#21584))MANTIS_ENABLE_ADMIN env variable or set it to 0 - this will remove "admin" folder from the installation.For further details refer to official documentation
version: "3"
services:
web:
# Pin the version for production usage!
image: okainov/mantisbt:latest
container_name: mantis_web
ports:
- "8989:80"
environment:
- MANTIS_ENABLE_ADMIN=1
# Set master salt, typically can be generated by `cat /dev/urandom | head -c 64 | base64`
#- MASTER_SALT=
# Set base email settings. For more detailed configuration (i.e. SMTP) you'll need to add own config file
- EMAIL_WEBMASTER=webmaster@localhost
- EMAIL_FROM=webmaster@localhost
- EMAIL_RETURN_PATH=webmaster@localhost
# Uncomment only if modified from default values
#- MYSQL_HOST=db
#- MYSQL_DATABASE=bugtracker
#- MYSQL_USER=mantis
#- MYSQL_PASSWORD=mantis
depends_on:
- db
restart: always
db:
image: mysql:5.7
container_name: mantis_db
volumes:
- ./db_data:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=root
- MYSQL_DATABASE=bugtracker
- MYSQL_USER=mantis
- MYSQL_PASSWORD=mantis
command: ['mysqld', '--character-set-server=utf8mb4', '--collation-server=utf8mb4_unicode_ci']
If you need to customize more options in config, create config_inc_addon.php file and mount it to /var/www/html/config/config_inc_addon.php in container. This fill will be added to default config_inc.php. Mounting it will allow you to see the changes instantly without rebuilding/restarting the container.
Some of the typical settings you might want to change:
$g_window_title = 'Title of your MantisBT instance';
// Default is useless 5 minutes
$g_reauthentication_expiry = 60 * 60;
// Increase upload file size from default 5MB
$g_max_file_size = 5 * 1024 * 1024;
// Enable anonymous access
$g_allow_anonymous_login = true;
$g_anonymous_account = 'anonymous';
There are following env variables supported:
g_webmaster_emailg_from_emailg_return_path_emailThose are good enough to start with. Going further, to configure SMTP you might need to create custom config (as described above) with the values like:
$g_phpMailer_method = PHPMAILER_METHOD_SMTP;
$g_smtp_host = 'mail.domain.com';
$g_smtp_username = '[email protected]';
$g_smtp_password = 'FILLME';
More details are available in official documentation
In order to add your own custom plugins into the image, either create your own Dockerfile and copy extra plugins to /var/www/html/plugins/ or add volume in docker-compose to mount extra plugin directly inside existing image ./custom_plugin/:/var/www/html/plugins/custom_plugin/
Content type
Image
Digest
sha256:3c2168a3b…
Size
194.6 MB
Last updated
8 months ago
docker pull okainov/mantisbt