services: db_icinga: image: mariadb hostname: ${ICINGA_DB_HOST:-db_icinga} restart: always volumes: - ./files/dbs/icinga:/var/lib/mysql networks: - icinga environment: MARIADB_RANDOM_ROOT_PASSWORD: yes MARIADB_DATABASE: ${ICINGA_DB:-icingadb} MARIADB_USER: ${ICINGA_DB_USER:-icingadb} MARIADB_PASSWORD: ${ICINGA_DB_PASS:-icingadb} db_redis: image: redis hostname: ${ICINGADB_REDIS_HOST:-db_redis} restart: always networks: - icinga # sync handler between icingadb (db_icinga) and redis (db_redis) icingadb: image: icinga/icingadb depends_on: - db_redis - db_icinga restart: always networks: - icinga environment: - ICINGADB_REDIS_HOST=${ICINGADB_REDIS_HOST:-db_redis} - ICINGADB_REDIS_PORT=${ICINGADB_REDIS_PORT:-6379} - ICINGADB_DATABASE_HOST=${ICINGA_DB_HOST:-db_icinga} - ICINGADB_DATABASE_PORT=${ICINGA_DB_PORT:-3306} - ICINGADB_DATABASE_DATABASE=${ICINGA_DB:-icingadb} - ICINGADB_DATABASE_USER=${ICINGA_DB_USER:-icingadb} - ICINGADB_DATABASE_PASSWORD=${ICINGA_DB_PASS:-icingadb} db_influxdb: image: influxdb:1.8 hostname: ${ICINGA_INFLUX_HOST:-db_influxdb} restart: always networks: - icinga volumes: - ./files/dbs/influx:/vol01/Docker/monitoring environment: - INFLUXDB_DB=${ICINGA_INFLUX_DB:-icinga} - INFLUXDB_USER=${ICINGA_INFLUX_USER:-icinga} - INFLUXDB_ADMIN_ENABLED=true - INFLUXDB_ADMIN_USER=${INFLUX_ADMIN_USER:-icinga} - INFLUXDB_ADMIN_PASSWORD=${INFLUX_ADMIN_PASS:-icinga} icinga2: image: git.ao-it.net/docker/icinga2:latest hostname: ${ICINGA_API_HOST:-icinga2} depends_on: - db_redis restart: always volumes: - ./files/icinga2:/data ports: - ${ICINGA_API_PORT:5665}:5665 # only need if you plan to use api from other sources as icingaweb2 networks: - icinga #- backend environment: # REMOVE VARS HERE IF YOU EDIT THE CONFIG DIRECTLY!! # The variables are primarily for the initial setup, later editing is recommended directly in the icinga config. # Empty or non-existent vars do not change anything ICINGA2_API_USER_ROOT_PASS: ${API_ROOT_PASS:-changeME!} # only on fist init! set api user root password ICINGA2_API_USER_ICINGAWEB_PASS: ${ICINGA_API_ICINGAWEB_PASS:-icingaweb} # only on first init! create api user icingaweb and set password ICINGA2_ICINGADB_REDIS_HOST: ${ICINGADB_REDIS_HOST:-db_redis} ICINGA2_ICINGADB_REDIS_PORT: ${ICINGADB_REDIS_PORT:-6379} ICINGA2_INFLUXDB_HOST: ${ICINGA_INFLUX_HOST:-db_influxdb} ICINGA2_INFLUXDB_PORT: ${ICINGA_INFLUX_PORT:-8086} ICINGA2_INFLUXDB_DB: ${ICINGA_INFLUX_DB:-icinga} networks: icinga: