328 lines
10 KiB
YAML
328 lines
10 KiB
YAML
version: "3.9"
|
|
|
|
volumes:
|
|
ssl:
|
|
external: true
|
|
mariadb-data:
|
|
external: true
|
|
ghost-data:
|
|
external: true
|
|
lumieredesoy-ghost-data:
|
|
external: true
|
|
victoria-metrics:
|
|
external: true
|
|
postgres-13:
|
|
external: true
|
|
|
|
networks:
|
|
default:
|
|
driver: bridge
|
|
enable_ipv6: true
|
|
ipam:
|
|
driver: default
|
|
config:
|
|
- subnet: 172.20.0.0/24
|
|
gateway: 172.20.0.1
|
|
- subnet: 2a01:e0a:49e:2b81::/64
|
|
gateway: 2a01:e0a:49e:2b81::1
|
|
|
|
services:
|
|
openldap:
|
|
image: openldap-alpine
|
|
volumes:
|
|
- /srv/docker/volume/openldap/config/openldap:/etc/openldap
|
|
- /srv/docker/volume/openldap/mdb:/var/lib/openldap/openldap-data
|
|
- ssl:/ssl
|
|
ports:
|
|
- 389:389
|
|
restart: always
|
|
postgres:
|
|
image: postgres:13-alpine
|
|
volumes:
|
|
- postgres-13:/var/lib/postgresql/data
|
|
- ssl:/ssl:ro
|
|
dns: fd00::3:2
|
|
networks:
|
|
default:
|
|
ipv6_address: 2a01:e0a:49e:2b81::5432
|
|
restart: always
|
|
haproxy:
|
|
image: haproxy:alpine
|
|
volumes:
|
|
- ssl:/ssl:ro
|
|
- /etc/haproxy:/usr/local/etc/haproxy:ro
|
|
ports:
|
|
- 8443:443
|
|
- 8443:443/udp
|
|
- 8000:80
|
|
restart: always
|
|
mem_limit: 128M
|
|
dns: fd00::3:2
|
|
networks:
|
|
default:
|
|
ipv6_address: 2a01:e0a:49e:2b81::8443
|
|
caddy:
|
|
image: caddy:alpine
|
|
volumes:
|
|
- ssl:/etc/dehydrated:ro
|
|
- /etc/caddy:/etc/caddy
|
|
- /srv/www:/srv/www
|
|
ports:
|
|
- 443:443
|
|
- 443:443/udp
|
|
- 80:80
|
|
restart: always
|
|
mem_limit: 128M
|
|
dns: 192.168.3.2
|
|
networks:
|
|
default:
|
|
ipv6_address: 2a01:e0a:49e:2b81::443
|
|
redis:
|
|
image: redis:alpine
|
|
restart: always
|
|
volumes:
|
|
- /srv/docker/volume/redis/data:/data
|
|
- /srv/docker/volume/redis/config/redis.conf:/usr/local/etc/redis/redis.conf:ro
|
|
command: redis-server /usr/local/etc/redis/redis.conf
|
|
mem_limit: 512M
|
|
dns: 192.168.3.2
|
|
networks:
|
|
default:
|
|
ipv6_address: 2a01:e0a:49e:2b81::6379
|
|
mariadb:
|
|
image: mariadb
|
|
volumes:
|
|
- mariadb-data:/var/lib/mysql
|
|
- ssl:/ssl:ro
|
|
ports:
|
|
- 3306:3306
|
|
dns: 192.168.3.2
|
|
networks:
|
|
default:
|
|
ipv6_address: 2a01:e0a:49e:2b81::3306
|
|
restart: always
|
|
lumieredesoy-ghost:
|
|
image: ghost:4-alpine
|
|
volumes:
|
|
- lumieredesoy-ghost-data:/var/lib/ghost/content
|
|
- /srv/docker/volume/lumieredesoy_ghost/config/config.production.json:/var/lib/ghost/config.production.json:ro
|
|
env_file: env/lumieredesoy-ghost
|
|
restart: always
|
|
ghost:
|
|
image: ghost:4-alpine
|
|
volumes:
|
|
- ghost-data:/var/lib/ghost/content
|
|
- /srv/docker/volume/ghost/config.production.json:/var/lib/ghost/config.production.json:ro
|
|
env_file: env/yann-ghost
|
|
restart: always
|
|
mem_limit: 512M
|
|
pdns:
|
|
image: pdns-alpine
|
|
volumes:
|
|
- /srv/docker/volume/pdns.conf:/etc/pdns/pdns.conf:ro
|
|
ports:
|
|
- "53:53/udp"
|
|
- "53:53/tcp"
|
|
restart: always
|
|
mem_limit: 128M
|
|
dns: 192.168.3.2
|
|
networks:
|
|
default:
|
|
ipv6_address: 2a01:e0a:49e:2b81::53
|
|
pdns-exporter:
|
|
image: debian:bullseye-slim
|
|
volumes:
|
|
- /srv/docker/volume/prometheus/powerdns_exporter/powerdns_exporter:/run/powerdns_exporter:ro
|
|
restart: always
|
|
mem_limit: 128M
|
|
command: /run/powerdns_exporter -api-url http://pdns:8081/api/v1/ -api-key ${API_KEY}
|
|
grafana:
|
|
image: grafana/grafana
|
|
volumes:
|
|
- /srv/docker/volume/grafana.ini:/etc/grafana/grafana.ini
|
|
restart: always
|
|
mem_limit: 128M
|
|
miniflux:
|
|
image: miniflux/miniflux
|
|
env_file: env/miniflux
|
|
restart: always
|
|
mem_limit: 128M
|
|
php80:
|
|
image: php-alpine
|
|
extra_hosts:
|
|
- "mail.verry.org:192.168.3.5"
|
|
volumes:
|
|
- /srv/www:/srv/www
|
|
extra_hosts:
|
|
- "quichante.vpn6:fd00::42:4"
|
|
- "mail.verry.org:192.168.3.5"
|
|
restart: always
|
|
dns: 192.168.3.2
|
|
pgbouncer:
|
|
image: pgbouncer-alpine
|
|
volumes:
|
|
- /srv/docker/volume/pgbouncer:/etc/pgbouncer:ro
|
|
restart: always
|
|
mem_limit: 128M
|
|
vmalert:
|
|
image: victoriametrics/vmalert
|
|
volumes:
|
|
- /srv/docker/volume/victoriametrics/vmalert/alert.rules:/alert.rules:ro
|
|
command: -rule=/alert.rules -datasource.url=http://victoria:8428 -notifier.url=http://prometheus-alertmanager:9093 -enableTCP6
|
|
restart: always
|
|
mem_limit: 512M
|
|
vmagent:
|
|
image: victoriametrics/vmagent
|
|
volumes:
|
|
- /srv/docker/volume/victoriametrics/vmagent/prometheus.yml:/prometheus.yml:ro
|
|
- /srv/docker/volume/victoriametrics/vmagent/blackbox:/blackbox:ro
|
|
extra_hosts:
|
|
- "peach.verry.org:172.17.0.1"
|
|
- "ns2.vpn6:fd00::42:2"
|
|
- "ns3.vpn6:fd00::42:3"
|
|
- "backup-01.dinoutoo.vpn6:fd00::42:9"
|
|
- "unbound-exporter:fd00::3:2"
|
|
- "quichante.vpn6:fd00::42:4"
|
|
- "jetable.vpn6:fd00::42:5"
|
|
- "click.vpn6:fd00::42:6"
|
|
- "quizz.vpn6:fd00::42:8"
|
|
- "kiwi.verry.org:2a01:e0a:49e:2b83::6"
|
|
- "backup-01.dinoutoo.vpn:192.168.42.9"
|
|
- "rpizerow:192.168.0.85"
|
|
- "home.verry.org:2a01:e0a:49e:2b81::443"
|
|
- "mail.verry.org:192.168.3.5"
|
|
command: -enableTCP6 -promscrape.config=/prometheus.yml -remoteWrite.url=http://victoria:8428/api/v1/write -sortLabels -promscrape.config.strictParse=false
|
|
restart: always
|
|
mem_limit: 512M
|
|
prometheus-alertmanager:
|
|
image: prom/alertmanager
|
|
volumes:
|
|
- /srv/docker/volume/prometheus/config/alertmanager.yml:/etc/alertmanager/alertmanager.yml
|
|
extra_hosts:
|
|
- "mail.verry.org:192.168.3.5"
|
|
restart: always
|
|
mem_limit: 128M
|
|
prometheus-blackbox:
|
|
image: prom/blackbox-exporter
|
|
volumes:
|
|
- /srv/docker/volume/prometheus/config/blackbox.yml:/etc/prometheus/blackbox.yml
|
|
cap_add:
|
|
- NET_RAW
|
|
extra_hosts:
|
|
- "mail.verry.org:192.168.3.5"
|
|
restart: always
|
|
mem_limit: 128M
|
|
prometheus-mysqld:
|
|
image: prom/mysqld-exporter
|
|
env_file: env/prometheus-mysqld
|
|
restart: always
|
|
mem_limit: 512M
|
|
prometheus-postgres:
|
|
image: quay.io/prometheuscommunity/postgres-exporter
|
|
env_file: env/prometheus-postgres
|
|
restart: always
|
|
mem_limit: 128M
|
|
prometheus-redis:
|
|
image: oliver006/redis_exporter
|
|
env_file: env/prometheus-redis
|
|
restart: always
|
|
mem_limit: 128M
|
|
prometheus-hue:
|
|
image: mitchellrj/hue_exporter:latest
|
|
volumes:
|
|
- /srv/docker/volume/hue_exporter/home.yml:/etc/hue_exporter/config.yml:ro
|
|
restart: always
|
|
mem_limit: 128M
|
|
promtail:
|
|
image: grafana/promtail
|
|
command: -config.file=/etc/promtail/promtail.yaml
|
|
restart: always
|
|
mem_limit: 128M
|
|
volumes:
|
|
- /srv/docker/volume/promtail:/etc/promtail:ro
|
|
rsyslog:
|
|
image: rsyslog-alpine
|
|
restart: always
|
|
volumes:
|
|
- /srv/docker/volume/rsyslog/config/rsyslog.conf:/etc/rsyslog.conf:ro
|
|
- /srv/docker/volume/rsyslog/data:/data
|
|
ports:
|
|
- 514:514/udp
|
|
- 514:514
|
|
dns: 192.168.3.2
|
|
mem_limit: 128M
|
|
networks:
|
|
default:
|
|
ipv6_address: 2a01:e0a:49e:2b81::514
|
|
linky-exporter:
|
|
userns_mode: "host"
|
|
image: debian:bullseye-slim
|
|
volumes:
|
|
- /srv/docker/volume/teleinfo/linky-exporter:/linky
|
|
command: /linky/linky-exporter --device="/dev/ttyUSB0" -b 1200 --parity="E"
|
|
restart: always
|
|
mem_limit: 128M
|
|
devices:
|
|
- "/dev/ttyUSB0:/dev/ttyUSB0"
|
|
victoria:
|
|
image: victoriametrics/victoria-metrics
|
|
volumes:
|
|
- victoria-metrics:/victoria
|
|
command: -storageDataPath /victoria -retentionPeriod 36 -enableTCP6
|
|
restart: always
|
|
happydns:
|
|
image: happydns/happydns
|
|
env_file: env/happydns
|
|
volumes:
|
|
- /srv/docker/volume/happydns:/data
|
|
restart: always
|
|
mem_limit: 128M
|
|
dnsdist:
|
|
image: dnsdist
|
|
volumes:
|
|
- /srv/docker/volume/dnsdist/dnsdist.conf:/etc/dnsdist.conf:ro
|
|
- ssl:/ssl
|
|
restart: always
|
|
mem_limit: 128M
|
|
ports:
|
|
- 853:853
|
|
command: /usr/bin/dnsdist -u nobody -g nobody -C /etc/dnsdist.conf --supervised -v
|
|
networks:
|
|
default:
|
|
ipv6_address: 2a01:e0a:49e:2b81::853
|
|
gitea:
|
|
image: gitea/gitea:dev
|
|
volumes:
|
|
- /srv/docker/volume/gitea/data:/data
|
|
restart: always
|
|
mem_limit: 512M
|
|
depends_on:
|
|
- postgres
|
|
routeros-exporter:
|
|
image: python-routeros
|
|
restart: always
|
|
mem_limit: 128M
|
|
env_file: env/routeros-exporter
|
|
synapse:
|
|
image: matrixdotorg/synapse:latest
|
|
volumes:
|
|
- /srv/docker/volume/synapse/data:/data
|
|
restart: always
|
|
whoami:
|
|
image: traefik/whoami
|
|
restart: always
|
|
environment:
|
|
- WHOAMI_NAME=iamverry
|
|
bitwarden:
|
|
image: vaultwarden/server
|
|
volumes:
|
|
- /srv/docker/volume/bitwarden:/data
|
|
restart: always
|
|
mem_limit: 128M
|
|
env_file: env/vaultwarden
|
|
geoipupdate:
|
|
image: "maxmindinc/geoipupdate:latest"
|
|
volumes:
|
|
- "/srv/docker/volume/geoip:/usr/share/GeoIP"
|
|
env_file: env/geoipupdate
|