create inital compose

This commit is contained in:
2025-02-02 19:15:46 +01:00
parent e7f9836441
commit 853a152603
3 changed files with 132 additions and 141 deletions

82
compose.yml Normal file
View File

@@ -0,0 +1,82 @@
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: