Files
compose-files/database/compose.yaml
T
Arnout van Westen 0eb590f455 feat(dnsweaver): traefik router labels on all HTTP UIs; exclude list trimmed to DBs/agents
All HTTP-served containers (web UIs + metrics APIs) now carry explicit
router-rule labels so dnsweaver manages their arnoutvw.nl rewrites end
to end (no more relying on traefik defaultRule). krusader fixed to
noVNC 8080-ish label -> 6080. EXCLUDE_DOMAINS reduced to databases,
workers and agents (postgres14/mariadb/redis/postgresql17/komodo-mongo/
bookorbit-db/immich_postgres/immich_ml/dawarich_*db-redis-sidekiq/
influxdb/newt*/komodo-periphery/dockersocket/subsyncarr/wordpress-blues).
2026-10-05 09:10:52 +02:00

149 lines
3.7 KiB
YAML

version: "3.6"
services:
Postgres14:
container_name: "Postgres14"
entrypoint:
- "docker-entrypoint.sh"
command:
- "postgres"
environment:
- "POSTGRES_PASSWORD=postgres"
- "POSTGRES_USER=postgres"
- "POSTGRES_DB=postgres"
- "TZ=Europe/Berlin"
- "PGDATA=/var/lib/postgresql/data"
image: "postgres:14-alpine"
ipc: "private"
logging:
driver: "json-file"
options:
max-file: "1"
max-size: "50m"
network_mode: "bridge"
ports:
- "5433:5432/tcp"
restart: "unless-stopped"
volumes:
- "/mnt/cache/appdata/postgres14:/var/lib/postgresql/data"
working_dir: "/"
mariadb:
container_name: "mariadb"
entrypoint:
- "/init"
environment:
- "MYSQL_DATABASE=wordpress"
- "MYSQL_PASSWORD=${MARIADB_PASSWORD}"
- "MYSQL_USER=wordpress"
- "MYSQL_ROOT_PASSWORD=${MARIADB_ROOT_PASSWORD}"
- "UMASK=022"
- "TZ=Europe/Berlin"
- "PUID=99"
- "PGID=100"
- "MYSQL_DIR=/config"
- "DATADIR=/config/databases"
- "S6_CMD_WAIT_FOR_SERVICES_MAXTIME=0"
- "S6_VERBOSITY=1"
- "S6_STAGE2_HOOK=/docker-mods"
- "LSIO_FIRST_PARTY=true"
image: "lscr.io/linuxserver/mariadb:11.8.8-r0-ls233"
ipc: "private"
logging:
driver: "json-file"
options:
max-file: "1"
max-size: "50m"
network_mode: "bridge"
ports:
- "3306:3306/tcp"
restart: "unless-stopped"
volumes:
- "/mnt/user/appdata/mariadb:/config"
working_dir: "/"
pgadmin4:
container_name: "pgadmin4"
entrypoint:
- "/entrypoint.sh"
environment:
- "PGADMIN_CONFIG_AUTHENTICATION_SOURCES=['oauth2', 'internal']"
- "PGADMIN_LISTEN_ADDRESS=0.0.0.0"
- "TZ=Europe/Berlin"
- "PGADMIN_DEFAULT_EMAIL=arnoutvw@gmail.com"
- "PGADMIN_DEFAULT_PASSWORD=${PGADMIN_PASSWORD}"
image: "dpage/pgadmin4:9.18"
labels:
- traefik.enable=true
- traefik.http.routers.pgadmin4.rule=Host(`pgadmin4.arnoutvw.nl`)
- traefik.http.services.pgadmin4.loadbalancer.server.port=80
ipc: "private"
logging:
driver: "json-file"
options:
max-file: "1"
max-size: "50m"
network_mode: "bridge"
ports:
- "8792:80/tcp"
user: "5050"
restart: "unless-stopped"
volumes:
- "/mnt/cache/appdata/pgadmin4/config_local.py:/pgadmin4/config_local.py"
- "/mnt/user/appdata/pgadmin4:/var/lib/pgadmin"
working_dir: "/pgadmin4"
phpmyadmin:
container_name: "phpmyadmin"
entrypoint:
- "/init"
environment:
- "PMA_ARBITRARY=1"
- "PMA_ABSOLUTE_URI=http://192.168.10.144:7780"
- "PHP_INI_SCAN_DIR=:/config/php"
- "PUID=99"
- "PGID=100"
- "UMASK=022"
- "TZ=Europe/Berlin"
- "MAX_EXECUTION_TIME=600"
- "MEMORY_LIMIT=512M"
- "UPLOAD_LIMIT=8192K"
image: "lscr.io/linuxserver/phpmyadmin:5.2.3-ls252"
labels:
- traefik.enable=true
- traefik.http.routers.phpmyadmin.rule=Host(`phpmyadmin.arnoutvw.nl`)
- traefik.http.services.phpmyadmin.loadbalancer.server.port=80
ipc: "private"
logging:
driver: "json-file"
options:
max-file: "1"
max-size: "50m"
network_mode: "bridge"
ports:
- "7780:80/tcp"
restart: "unless-stopped"
volumes:
- "/mnt/user/appdata/phpmyadmin:/config"
working_dir: "/"
Redis:
container_name: "Redis"
command:
- "redis-server"
environment:
- "TZ=Europe/Berlin"
image: "redis:8.10.2"
logging:
driver: "json-file"
options:
max-file: "1"
max-size: "50m"
network_mode: "bridge"
ports:
- "6379:6379/tcp"
restart: "unless-stopped"