volumes: conduit-db: external: true conduwuit-db: external: true ssl: external: true victoria-metrics: external: true postgres-17: external: true mysql-data: external: true lumieredesoy-ghost-data: external: true networks: default: name: yann_default driver: bridge enable_ipv6: true ipam: driver: default config: - subnet: 172.20.0.0/24 gateway: 172.20.0.1 - subnet: 2a01:e0a:cba:5f51::/64 gateway: 2a01:e0a:cba:5f51::1 services: postgres: image: postgres:17-alpine volumes: - postgres-17:/var/lib/postgresql/data - ssl:/ssl:ro environment: - POSTGRES_PASSWORD=J5PdCv9ObVh5uZCJDpndzXoUumAKn52K networks: default: ipv6_address: 2a01:e0a:cba:5f51::5432 restart: always caddy: image: caddy:alpine volumes: - ssl:/ssl:ro - /etc/caddy:/etc/caddy - /srv/www:/srv/www - /srv/www/nfs/kiwi/Videos:/srv/www/nfs/kiwi/Videos:ro restart: always ports: - 443:443 - 443:443/udp - 80:80 mem_limit: 1G command: caddy run --config /etc/caddy/Caddyfile --adapter caddyfile networks: default: ipv6_address: 2a01:e0a:cba:5f51::443 ipv4_address: 172.20.0.250 redis: image: valkey/valkey 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:cba:5f51::6379 pdns: image: powerdns/pdns-auth-51:latest volumes: - /srv/docker/volume/powerdns/pdns/pdns.conf:/etc/powerdns/pdns.conf:ro - /srv/docker/volume/powerdns/pdns/custom.conf:/etc/powerdns/pdns.d/custom.conf:ro - /srv/docker/volume/powerdns/pdns/data:/powerdns-lmdb:rw ports: - "192.168.3.10:53:53/udp" - "192.168.3.10:53:53/tcp" #command: /usr/sbin/pdns_server --guardian=no --daemon=no --disable-syslog --log-timestamp=no --write-pid=no restart: always mem_limit: 128M dns: 192.168.3.2 networks: default: ipv6_address: 2a01:e0a:cba:5f51::53 grafana: image: grafana/grafana:main volumes: - /srv/docker/volume/grafana/grafana.ini:/etc/grafana/grafana.ini restart: always mem_limit: 1G php: image: php85-alpine extra_hosts: - "mail.verry.org:192.168.42.3" dns: 192.168.3.2 command: php-fpm volumes: - /srv/www:/srv/www restart: always nextcloud-push: image: alpine extra_hosts: - "mail.verry.org:192.168.42.3" - "cloud.verry.org:172.20.0.250" dns: 192.168.3.2 command: /srv/www/yann/owncloud/nextcloud/apps/notify_push/bin/x86_64/notify_push /srv/www/yann/owncloud/nextcloud/config/config.php volumes: - /srv/www/yann/owncloud/nextcloud:/srv/www/yann/owncloud/nextcloud restart: always networks: default: ipv6_address: 2a01:e0a:cba:5f51::beef ipv4_address: 172.20.0.251 miniflux: image: miniflux/miniflux:latest-distroless env_file: env/miniflux restart: always mem_limit: 128M pgbouncer: image: pgbouncer-alpine volumes: - /srv/docker/volume/pgbouncer:/etc/pgbouncer:ro dns: 192.168.3.2 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:192.168.3.2" - "quichante.vpn6:fd00::42:4" - "click.vpn6:fd00::42:6" - "quizz.vpn6:fd00::42:8" - "kiwi.verry.org:2a01:e0a:cba:5f53::6" - "banana.verry.org:2a01:e0a:cba:5f53::11" - "backup-01.dinoutoo.vpn:192.168.42.9" - "home.verry.org:2a01:e0a:cba:5f51::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:ro - /srv/docker/volume/alertmanager/data:/alertmanager:rw extra_hosts: - "mail.verry.org:192.168.3.5" restart: always mem_limit: 128M command: - "--config.file=/etc/alertmanager/alertmanager.yml" - "--storage.path=/alertmanager" - "--web.external-url=https://alertmanager.verry.org/" prometheus-blackbox: image: prom/blackbox-exporter volumes: - /srv/docker/volume/prometheus/config/blackbox.yml:/etc/prometheus/blackbox.yml:ro cap_add: - NET_RAW extra_hosts: - "mail.verry.org:192.168.3.5" restart: always mem_limit: 128M 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: alpine volumes: - /srv/docker/volume/hue_exporter:/hue_exporter:ro command: '/hue_exporter/hue_exporter -metrics-file=/hue_exporter/hue_metrics.json -hue-url="192.168.0.3" -username="qR4H-LSFFPuMz607ALjz56GF9qE4mmmsx4qrmD7Q" -listen-address=0.0.0.0:9773' restart: always mem_limit: 128M # secret: # image: ghcr.io/openbao/openbao # restart: always # mem_limit: 128M # volumes: # - /srv/docker/volume/openbao:/openbao promtail: image: grafana/promtail command: -config.file=/etc/promtail/promtail.yaml restart: always mem_limit: 128M volumes: - /srv/docker/volume/promtail:/etc/promtail:ro victoria: image: victoriametrics/victoria-metrics volumes: - victoria-metrics:/victoria command: -storageDataPath /victoria -retentionPeriod 60 -enableTCP6 restart: always cpus: 1 mem_limit: 8G # dnsdist: # image: powerdns/dnsdist-20 # volumes: # - /srv/docker/volume/dnsdist/dnsdist.conf:/etc/dnsdist/dnsdist.conf:ro # - ssl:/ssl # restart: always # mem_limit: 128M # ports: # - 853:853 # networks: # default: # ipv6_address: 2a01:e0a:cba:5f51::853 gitea: image: codeberg.org/forgejo/forgejo:11 volumes: - /srv/docker/volume/gitea/data:/data restart: always mem_limit: 512M depends_on: - postgres conduit: image: registry.gitlab.com/famedly/conduit/matrix-conduit:latest env_file: env/conduit volumes: - ssl:/ssl:ro - /srv/docker/volume/conduit/config:/config:ro - /srv/docker/volume/conduit/db-backup:/db-backup:rw - conduit-db:/db:rw restart: always mem_limit: 2G cpus: 1 saic-mqtt-gateway: image: "saicismartapi/saic-python-mqtt-gateway:latest" env_file: env/saic-mqtt-gateway volumes: - /srv/docker/volume/saic/charging-stations.json:/usr/src/app/charging-stations.json matrix-alertmanager: image: jaywink/matrix-alertmanager:latest env_file: env/matrix-alertmanager restart: always mem_limit: 1G cpus: 1 authentik-server: image: ghcr.io/goauthentik/server:2026.5 restart: unless-stopped command: server volumes: - /srv/docker/volume/authentik/media:/media - /srv/docker/volume/authentik/custom-templates:/templates env_file: - env/authentik-server depends_on: - postgres - redis authentik-worker: image: ghcr.io/goauthentik/server:2026.5 restart: unless-stopped command: worker volumes: - /srv/docker/volume/authentik/media:/media - /srv/docker/volume/authentik/certs:/certs - /srv/docker/volume/authentik/custom-templates:/templates env_file: - env/authentik-worker depends_on: - postgres - redis mosquitto: image: eclipse-mosquitto volumes: - ssl:/ssl:ro - /srv/docker/volume/mosquitto/config:/mosquitto/config - /srv/docker/volume/mosquitto/data:/mosquitto/data ports: - 1883:1883 #mqtt restart: always networks: default: ipv6_address: 2a01:e0a:cba:5f51::1883 homeassistant: image: ghcr.io/home-assistant/home-assistant:stable environment: - TZ='Europe/Paris' volumes: - /srv/docker/volume/homeassistant:/config ports: - 9000:9000 # OCPP restart: always uptime-kuma: image: louislam/uptime-kuma:2 volumes: - /srv/docker/volume/uptime-kuma/data:/app/data:rw restart: always mem_limit: 4G cpus: 1 geoipupdate: image: "maxmindinc/geoipupdate:latest" volumes: - "/srv/docker/volume/geoip:/usr/share/GeoIP" env_file: env/geoipupdate vector: image: timberio/vector:latest-alpine env_file: - env/vector volumes: - /srv/docker/volume/vector/vector.yaml:/etc/vector/vector.yaml:ro restart: unless-stopped vikunja: image: vikunja/vikunja env_file: - env/vikunja volumes: - /srv/docker/volume/vikunja:/app/vikunja/files depends_on: - postgres restart: unless-stopped ring-mqtt: restart: unless-stopped image: tsightler/ring-mqtt ports: - 8554:8554 # Enable RTSP port for external media player access volumes: - /srv/docker/volume/ring-mqtt:/data # Mapping of local folder to provide persistent storage logging: #limit logs to 10m and 3 files options: max-size: 10m max-file: "3" garage: hostname: peach-garage image: dxflrs/garage:v2.3.0 volumes: - /srv/docker/volume/garage/data:/var/lib/garage - /srv/docker/volume/garage/garage.toml:/etc/garage.toml:ro networks: default: ipv6_address: 2a01:e0a:cba:5f51::666 restart: always mysql: image: mysql:lts volumes: - mysql-data:/var/lib/mysql - ssl:/ssl:ro restart: always lumieredesoy-ghost: image: ghost:6-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