Icinga Web 2 - Docker image

This image integrates Icinga Web 2 into your Docker environment.

Usage

docker run --rm -d \
	-p 8080:8080 \
	-v icingaweb:/data \
	-e icingaweb.enabledModules=icingadb,ipl \
	-e icingaweb.authentication.icingaweb2.backend=db \
	-e icingaweb.authentication.icingaweb2.resource=icingaweb_db \
	-e icingaweb.config.global.config_backend=db \
	-e icingaweb.config.global.config_resource=icingaweb_db \
	-e icingaweb.config.logging.log=php \
	-e icingaweb.groups.icingaweb2.backend=db \
	-e icingaweb.groups.icingaweb2.resource=icingaweb_db \
	-e icingaweb.modules.icingadb.config.icingadb.resource=icingadb \
	-e icingaweb.modules.icingadb.config.redis1.host=2001:db8::192.0.2.18 \
	-e icingaweb.modules.icingadb.config.redis1.port=6379 \
	-e icingaweb.modules.monitoring.commandtransports.icinga2.transport=api \
	-e icingaweb.modules.monitoring.commandtransports.icinga2.host=2001:db8::192.0.2.9 \
	-e icingaweb.modules.monitoring.commandtransports.icinga2.username=root \
	-e icingaweb.modules.monitoring.commandtransports.icinga2.password=123456 \
	-e icingaweb.resources.icingaweb_db.type=db \
	-e icingaweb.resources.icingaweb_db.db=mysql \
	-e icingaweb.resources.icingaweb_db.host=2001:db8::192.0.2.13 \
	-e icingaweb.resources.icingaweb_db.dbname=icingaweb \
	-e icingaweb.resources.icingaweb_db.username=icingaweb \
	-e icingaweb.resources.icingaweb_db.password=123456 \
	-e icingaweb.resources.icingaweb_db.charset=utf8 \
	-e icingaweb.resources.icingadb.type=db \
	-e icingaweb.resources.icingadb.db=mysql \
	-e icingaweb.resources.icingadb.host=2001:db8::192.0.2.113 \
	-e icingaweb.resources.icingadb.dbname=icingadb \
	-e icingaweb.resources.icingadb.username=icingaweb \
	-e icingaweb.resources.icingadb.password=123456 \
	-e icingaweb.resources.icingadb.charset=utf8 \
	-e icingaweb.roles.Administrators.users=icingaadmin \
	-e icingaweb.roles.Administrators.permissions='*' \
	-e icingaweb.roles.Administrators.groups=Administrators \
	icinga/icingaweb2

The container listens on port 8080 and expects a volume on /data. To configure it, do one of the following:

  • Run the setup wizard as usual. It will store all configuration in /data/etc/icingaweb2. Hint: docker run --rm -v icingaweb:/data icinga/icingaweb2 icingacli setup token create
  • Provide configuration files in /data/etc/icingaweb2 by yourself. Consult the Icinga Web 2 configuration documentation on which .ini files there are.
  • Provide environment variables as shown above.

Environment variables

icingaweb.enabledModules is a comma-separated set of the only modules to be enabled.

Variables like icingaweb.dir.subdir.file.section.option=value create .ini files like /data/etc/icingaweb2/dir/subdir/file.ini with content like this:

[section]
option = value

Consult the Icinga Web 2 configuration documentation on which .ini files there are.

Description
No description provided
Readme GPL-2.0 455 KiB
Languages
Go 38.5%
Shell 25.1%
PHP 21%
Dockerfile 15.4%