diff --git a/compose.yml b/compose.yml new file mode 100644 index 0000000..bd3fcb6 --- /dev/null +++ b/compose.yml @@ -0,0 +1,68 @@ +services: + icingaweb2: + image: git.ao-it.net/docker/icingaweb2 + hostname: icingaweb2 + depends_on: + - db_icingaweb + restart: always + volumes: + - ./files/icingaweb2:/data + ports: + - 8080:8080 + networks: + - icingaweb + environment: + - ICINGAWEB2_CONF.logging.log=php + - ICINGAWEB2_CONF.logging.level=ERROR + - ICINGAWEB2_CONF.logging.application=icingaweb2 + - ICINGAWEB2_CONF.global.config_backend=db + - ICINGAWEB2_CONF.global.config_resource=${ICINGAWEB_DB_RESOURCE_NAME:-icingaweb_db} + - ICINGAWEB2_RESOURCES.${ICINGAWEB_DB_RESOURCE_NAME:-icingaweb_db}.type=db + - ICINGAWEB2_RESOURCES.${ICINGAWEB_DB_RESOURCE_NAME:-icingaweb_db}.db=mysql + - ICINGAWEB2_RESOURCES.${ICINGAWEB_DB_RESOURCE_NAME:-icingaweb_db}.host=${ICINGAWEB_DB_HOST:-db_icingaweb} + - ICINGAWEB2_RESOURCES.${ICINGAWEB_DB_RESOURCE_NAME:-icingaweb_db}.dbname=${ICINGAWEB_DB:-icingaweb} + - ICINGAWEB2_RESOURCES.${ICINGAWEB_DB_RESOURCE_NAME:-icingaweb_db}.username=${ICINGAWEB_DB_USER:-icingaweb} + - ICINGAWEB2_RESOURCES.${ICINGAWEB_DB_RESOURCE_NAME:-icingaweb_db}.password=${ICINGAWEB_DB_PASS:-icingaweb} + - ICINGAWEB2_RESOURCES.${ICINGAWEB_DB_RESOURCE_NAME:-icingaweb_db}.charset=utf8mb4 + - ICINGAWEB2_RESOURCES.${ICINGAWDB_RESOURCE_NAME:-icingadb}.type=db + - ICINGAWEB2_RESOURCES.${ICINGAWDB_RESOURCE_NAME:-icingadb}.db=mysql + - ICINGAWEB2_RESOURCES.${ICINGAWDB_RESOURCE_NAME:-icingadb}.host=${ICINGA_DB_HOST:-db_icinga} + - ICINGAWEB2_RESOURCES.${ICINGAWDB_RESOURCE_NAME:-icingadb}.dbname=${ICINGA_DB:-icingadb} + - ICINGAWEB2_RESOURCES.${ICINGAWDB_RESOURCE_NAME:-icingadb}.username=${ICINGA_DB_USER:-icingadb} + - ICINGAWEB2_RESOURCES.${ICINGAWDB_RESOURCE_NAME:-icingadb}.password=${ICINGA_DB_PASS:-icingadb} + - ICINGAWEB2_RESOURCES.${ICINGAWDB_RESOURCE_NAME:-icingadb}.charset=utf8mb4 + - ICINGAWEB2_AUTH.icingaweb2.backend=db + - ICINGAWEB2_AUTH.icingaweb2.resource=${ICINGAWEB_DB_RESOURCE_NAME:-icingaweb_db} + - ICINGAWEB2_GROUPS.icingaweb2.backend=db + - ICINGAWEB2_GROUPS.icingaweb2.resource=${ICINGAWEB_DB_RESOURCE_NAME:-icingaweb_db} + - ICINGAWEB2_ROLES.${ICINGAWEB_DEFAULT_ADMIN_ROLE:-Administrators}.groups=${ICINGAWEB_DEFAULT_ADMIN_ROLE:-Administrators} + - ICINGAWEB2_ROLES.${ICINGAWEB_DEFAULT_ADMIN_ROLE:-Administrators}.permissions="*" + - ICINGAWEB2_ROLES.${ICINGAWEB_DEFAULT_ADMIN_ROLE:-Administrators}.users=${ICINGAWEB_DEFAULT_ADMIN_USER:-icingaadmin} + - ICINGAWEB2_ICINGADB_CONF.icingadb.resource=icingadb + - ICINGAWEB2_ICINGADB_REDIS.redis1.host=${ICINGADB_REDIS_HOST:-redis} + - ICINGAWEB2_ICINGADB_REDIS.redis1.port=${ICINGADB_REDIS_PORT:-6379} + - ICINGAWEB2_ICINGADB_CMD.icinga2.transport=${ICINGADB_CMD_TYPE:-api} + - ICINGAWEB2_ICINGADB_CMD.icinga2.host=${ICINGA_API_HOST:-icinga2} + - ICINGAWEB2_ICINGADB_CMD.icinga2.port=${ICINGA_API_PORT:-5665} + - ICINGAWEB2_ICINGADB_CMD.icinga2.username=${ICINGA_API_ICINGAWEB_USER:-icingaweb} + - ICINGAWEB2_ICINGADB_CMD.icinga2.password=${ICINGA_API_ICINGAWEB_PASS:-icingaweb} + - ICINGAWEB2_DB_RESOURCE_NAME=${ICINGAWEB_DB_RESOURCE_NAME:-icingaweb_db} + - ICINGAWEB2_DEFAULT_ADMIN_USER=${ICINGAWEB_DEFAULT_ADMIN_USER:-icingaadmin} + - ICINGAWEB2_DEFAULT_ADMIN_PASS=${ICINGAWEB_DEFAULT_ADMIN_PASS:-icingaadmin} + + db_icingaweb: + image: mariadb:latest + hostname: ${ICINGAWEB_DB_HOST:-db_icingaweb} + restart: always + volumes: + - ./files/dbs/icingaweb:/var/lib/mysql + networks: + - icingaweb + environment: + MARIADB_RANDOM_ROOT_PASSWORD: yes + MARIADB_DATABASE: ${ICINGAWEB_DB:-icingaweb} + MARIADB_USER: ${ICINGAWEB_DB_USER:-icingaweb} + MARIADB_PASSWORD: ${ICINGAWEB_DB_PASS:-icingaweb} + +networks: + icingaweb: \ No newline at end of file