-
Christian Elberfeld authoredChristian Elberfeld authored
docker-compose.yml 2.53 KiB
version: "2.4"
services:
app:
build: .
restart: always
hostname: "{{ domain }}"
ports:
- "{{ api_port }}:5665"
volumes:
- "{{ basedir }}/data:/var/lib/icinga2"
- "{{ basedir }}/etc/locale.gen:/etc/locale.gen"
- "{{ basedir }}/etc/icinga:/etc/icinga2"
- "{{ basedir }}/etc/icingaweb2:/etc/icingaweb2"
- "{{ basedir }}/log/apache2:/var/log/apache2"
- "{{ basedir }}/log/icinga2:/var/log/icinga2"
- "{{ basedir }}/log/icingaweb2:/var/log/icingaweb2"
depends_on:
- db
- graphite
environment:
TZ: "Europe/Berlin"
APACHE2_HTTP: BOTH
MYSQL_HOST: db
MYSQL_ROOT_USER: "root"
MYSQL_ROOT_PASSWORD: "{{ mysql_admin_pass }}"
MYSQL_PASSWORD: "{{ mysql_user_pass }}"
MYSQL_DATABASE: icinga
MYSQL_USER: icinga
DEFAULT_MYSQL_HOST: db
DEFAULT_MYSQL_USER: icinga
DEFAULT_MYSQL_PASS: "{{ mysql_user_pass }}"
ICINGAWEB2_ADMIN_PASS: "{{ icinga_admin_pass }}"
ICINGA2_FEATURE_GRAPHITE: 1
ICINGA2_FEATURE_GRAPHITE_HOST: graphite
ICINGA2_FEATURE_GRAPHITE_PORT: 2003
ICINGA2_FEATURE_DIRECTOR: 0
labels:
- traefik.enable=true
- traefik.http.routers.{{ servicename }}.rule=Host(`{{ domain }}`)
- traefik.http.routers.{{ servicename }}.entrypoints=websecure
- traefik.http.services.{{ servicename }}.loadbalancer.server.port=80
networks:
- default
- web
db:
image: mariadb:10.5.6
restart: always
ports:
- "{{ int_ip4 }}:{{mysql_port}}:3306"
volumes:
- "{{ basedir }}/db:/var/lib/mysql"
environment:
MYSQL_ROOT_PASSWORD: "{{ mysql_admin_pass }}"
MYSQL_PASSWORD: "{{ mysql_user_pass }}"
MYSQL_DATABASE: icinga
MYSQL_USER: icinga
networks:
- default
graphite:
image: graphiteapp/graphite-statsd:1.1.7-6
restart: always