145 lines
6.4 KiB
YAML
145 lines
6.4 KiB
YAML
services:
|
|
dnsweaver:
|
|
# Auto-manages AdGuard (192.168.10.54:3000, primary of the 2 synced
|
|
# instances) DNS rewrites for containers carrying traefik router rule
|
|
# labels, plus the traefik file-provider rules (fileConfig.yml mount).
|
|
# Managed mode: orphan cleanup deletes only records whose type+target
|
|
# match (A -> 192.168.10.144), which is why the *.arnoutvw.nl wildcard
|
|
# rewrite was removed and every defaultRule-derived hostname (no router
|
|
# label on its container) lives as an EXCLUDE_DOMAINS static rewrite.
|
|
image: maxamill/dnsweaver:latest
|
|
container_name: dnsweaver
|
|
restart: unless-stopped
|
|
init: true
|
|
network_mode: bridge
|
|
labels:
|
|
- traefik.enable=true
|
|
- traefik.http.routers.dnsweaver.rule=Host(`dnsweaver.arnoutvw.nl`)
|
|
- traefik.http.services.dnsweaver.loadbalancer.server.port=8080
|
|
volumes:
|
|
- /var/run/docker.sock:/var/run/docker.sock:ro
|
|
- /mnt/user/appdata/traefik/fileConfig.yml:/etc/traefik/fileConfig.yml:ro
|
|
environment:
|
|
TZ: Europe/Amsterdam
|
|
DNSWEAVER_LOG_LEVEL: info
|
|
DNSWEAVER_SOURCES: traefik
|
|
DNSWEAVER_SOURCE_TRAEFIK_FILE_PATHS: /etc/traefik/fileConfig.yml
|
|
DNSWEAVER_INSTANCES: adguard
|
|
DNSWEAVER_ADGUARD_TYPE: adguard
|
|
DNSWEAVER_ADGUARD_URL: http://192.168.10.54:3000
|
|
DNSWEAVER_ADGUARD_USERNAME: arnout
|
|
DNSWEAVER_ADGUARD_PASSWORD: ${DNSWEAVER_ADGUARD_PASSWORD}
|
|
DNSWEAVER_ADGUARD_MODE: managed
|
|
DNSWEAVER_ADGUARD_RECORD_TYPE: A
|
|
DNSWEAVER_ADGUARD_TARGET: 192.168.10.144
|
|
DNSWEAVER_ADGUARD_ZONE: arnoutvw.nl
|
|
DNSWEAVER_ADGUARD_DOMAINS: "*.arnoutvw.nl"
|
|
DNSWEAVER_ADGUARD_EXCLUDE_DOMAINS: postgres14.arnoutvw.nl,mariadb.arnoutvw.nl,redis.arnoutvw.nl,postgresql17.arnoutvw.nl,komodo-mongo.arnoutvw.nl,bookorbit-db.arnoutvw.nl,immich_postgres.arnoutvw.nl,immich_machine_learning.arnoutvw.nl,postgres_exporter.arnoutvw.nl,dawarich_db.arnoutvw.nl,dawarich_redis.arnoutvw.nl,dawarich_sidekiq.arnoutvw.nl,influxdb-1.8.arnoutvw.nl,newt.arnoutvw.nl,newt-secondary.arnoutvw.nl,komodo-periphery.arnoutvw.nl,dockersocket.arnoutvw.nl,subsyncarr.arnoutvw.nl,wordpress-blues.arnoutvw.nl
|
|
# underscore hostnames (immich_machine_learning, postgres_exporter) are
|
|
# invalid DNS labels for dnsweaver — they resolve via the static rewrites
|
|
# and their traefik routes work, so they stay excluded instead.
|
|
|
|
smartctl-exporter:
|
|
image: quay.io/prometheuscommunity/smartctl-exporter:v0.14.0
|
|
container_name: smartctl-exporter
|
|
pull_policy: always
|
|
restart: unless-stopped
|
|
privileged: true
|
|
network_mode: bridge
|
|
user: root
|
|
ports:
|
|
- "9633:9633"
|
|
cadvisor:
|
|
image: gcr.io/cadvisor/cadvisor:v0.55.1
|
|
labels:
|
|
- traefik.enable=true
|
|
- traefik.http.routers.cadvisor.rule=Host(`cadvisor.arnoutvw.nl`)
|
|
- traefik.http.services.cadvisor.loadbalancer.server.port=8080
|
|
pull_policy: always
|
|
restart: unless-stopped
|
|
network_mode: bridge
|
|
ports:
|
|
- "9634:8080"
|
|
environment:
|
|
- TZ=Europe/Amsterdam
|
|
volumes:
|
|
- /:/rootfs:ro
|
|
- /var/run:/var/run:ro
|
|
- /sys:/sys:ro
|
|
- /var/lib/docker/:/var/lib/docker:ro
|
|
- /dev/disk/:/dev/disk:ro
|
|
prometheus:
|
|
command:
|
|
- "--config.file=/etc/prometheus/prometheus.yml"
|
|
container_name: "prometheus"
|
|
restart: always
|
|
environment:
|
|
- "TZ=Europe/Berlin"
|
|
- "HOST_OS=Unraid"
|
|
- "HOST_HOSTNAME=Atlas"
|
|
- "HOST_CONTAINERNAME=prometheus"
|
|
image: "prom/prometheus:v3.15.0"
|
|
labels:
|
|
traefik.enable: "true"
|
|
traefik.http.routers.prometheus.rule: Host(`prometheus.arnoutvw.nl`)
|
|
traefik.http.services.prometheus.loadbalancer.server.port: "9090"
|
|
maintainer: "The Prometheus Authors <prometheus-developers@googlegroups.com>"
|
|
net.unraid.docker.icon: "https://raw.githubusercontent.com/selfhosters/unRAID-CA-templates/master/templates/img/prometheus.png"
|
|
net.unraid.docker.managed: "dockerman"
|
|
net.unraid.docker.webui: "http://[IP]:[PORT:9090]"
|
|
org.opencontainers.image.source: "https://github.com/prometheus/prometheus"
|
|
kuma.prometheus.http.name: Prometheus
|
|
kuma.prometheus.http.url: http://192.168.10.144:9099/
|
|
kuma.prometheus.http.interval: 120
|
|
kuma.prometheus.http.max_retries: 3
|
|
network_mode: "bridge"
|
|
ports:
|
|
- "9099:9090/tcp"
|
|
user: "99:100"
|
|
volumes:
|
|
- "/mnt/cache/appdata/prometheus/data:/prometheus"
|
|
- "./prometheus:/etc/prometheus"
|
|
working_dir: "/prometheus"
|
|
|
|
AutoKuma:
|
|
container_name: "AutoKuma"
|
|
environment:
|
|
TZ: Europe/Berlin
|
|
AUTOKUMA__KUMA__URL: http://192.168.10.65:3001
|
|
AUTOKUMA__KUMA__PASSWORD: Xo48Yak8
|
|
AUTOKUMA__TAG_NAME: AutoKuma
|
|
AUTOKUMA__DOCKER__LABEL_PREFIX: kuma
|
|
AUTOKUMA__STATIC_MONITORS: /static_monitors
|
|
AUTOKUMA__KUMA__USERNAME: arnoutvw
|
|
AUTOKUMA__TAG_COLOR: '#42C0FB'
|
|
AUTOKUMA__ON_DELETE: delete
|
|
AUTOKUMA__KUMA__CONNECT_TIMEOUT: 5
|
|
AUTOKUMA_DOCKER: 1
|
|
AUTOKUMA__DEFAULT_SETTINGS: |-
|
|
docker.docker_container: {{container_name}}
|
|
http.max_redirects: 10
|
|
*.max_retries: 3
|
|
AUTOKUMA__SNIPPETS__WEB: |-
|
|
{{container_name}}_http.http.name: {{container_name}} HTTP
|
|
{{container_name}}_http.http.url: https://{{ args[0] }}:{{ args[1] }}
|
|
{{container_name}}_docker.docker.name: {{container_name}} Docker
|
|
{{container_name}}_docker.docker.docker_container: {{container_name}}
|
|
image: "ghcr.io/bigboot/autokuma:2.0.0"
|
|
labels:
|
|
net.unraid.docker.icon: "https://raw.githubusercontent.com/nwithan8/unraid_templates/master/images/autokuma-icon.png"
|
|
net.unraid.docker.managed: "dockerman"
|
|
org.opencontainers.image.created: "2025-05-09T14:48:04.275Z"
|
|
org.opencontainers.image.description: "AutoKuma is a utility that automates the creation of Uptime\
|
|
\ Kuma monitors based on Docker container labels. With AutoKuma, you can eliminate the need for\
|
|
\ manual monitor creation in the Uptime Kuma UI."
|
|
org.opencontainers.image.licenses: "MIT"
|
|
org.opencontainers.image.revision: "1f07bc08d04eed3569d2ee1e97dd4b044e619109"
|
|
org.opencontainers.image.source: "https://github.com/BigBoot/AutoKuma"
|
|
org.opencontainers.image.title: "AutoKuma"
|
|
org.opencontainers.image.url: "https://github.com/BigBoot/AutoKuma"
|
|
org.opencontainers.image.version: "1.0.0"
|
|
network_mode: "bridge"
|
|
volumes:
|
|
- "/mnt/user/appdata/autokuma/static_monitors:/static_monitors"
|
|
- "/var/run/docker.sock:/var/run/docker.sock:ro"
|