homelab/docker/stacks/db-ui/docker-stack.yml
2025-02-09 11:32:29 -08:00

61 lines
1.7 KiB
YAML

---
version: '3.1'
networks:
traefik:
external: true
services:
phpmyadmin:
image: phpmyadmin:5.2.2-apache
environment:
- PMA_HOST=${DB_HOST:-db.home.mnke.org}
networks:
- traefik
deploy:
labels:
- "traefik.enable=true"
- "traefik.http.routers.pma.rule=Host(`${PMA_HOST:-pma.stingray.mnke.org}`)"
- "traefik.http.routers.pma.entrypoints=websecure"
- "traefik.http.routers.pma.tls.certresolver=letsencrypt"
- "traefik.http.services.pma.loadbalancer.server.port=80"
- "traefik.swarm.network=traefik"
mode: replicated
replicas: 1
placement:
constraints: [node.role != manager]
resources:
limits:
cpus: '0.25'
memory: 128M
reservations:
cpus: '0.1'
memory: 32M
pgadmin:
image: dpage/pgadmin4:9.0.0
environment:
- PGADMIN_DEFAULT_EMAIL=${PGADMIN_EMAIL:-tony@mnke.org}
- PGADMIN_DEFAULT_PASSWORD=${PGADMIN_DEFAULT_PASSWORD:-password}
networks:
- traefik
deploy:
labels:
- "traefik.enable=true"
- "traefik.http.routers.pgadmin.rule=Host(`${PGADMIN_HOST:-pgadmin.stingray.mnke.org}`)"
- "traefik.http.routers.pgadmin.entrypoints=websecure"
- "traefik.http.routers.pgadmin.tls.certresolver=letsencrypt"
- "traefik.http.services.pgadmin.loadbalancer.server.port=80"
- "traefik.swarm.network=traefik"
mode: replicated
replicas: 1
placement:
constraints: [node.role != manager]
resources:
limits:
cpus: '0.5'
memory: 256M
reservations:
cpus: '0.1'
memory: 32M