mirror of
https://github.com/mblanke/Dashboard.git
synced 2026-03-01 12:10:20 -05:00
78 lines
2.1 KiB
Plaintext
78 lines
2.1 KiB
Plaintext
version: "3.8"
|
|
|
|
services:
|
|
dashboard:
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile
|
|
container_name: atlas-dashboard
|
|
restart: unless-stopped
|
|
# ports:
|
|
# - "3001:3000" # Commented out - using Traefik for routing
|
|
environment:
|
|
# Node Environment
|
|
- NODE_ENV=production
|
|
|
|
# Docker API
|
|
- DOCKER_HOST=${DOCKER_HOST}
|
|
|
|
# UniFi Controller
|
|
- UNIFI_HOST=${UNIFI_HOST}
|
|
- UNIFI_PORT=${UNIFI_PORT}
|
|
- UNIFI_USERNAME=${UNIFI_USERNAME}
|
|
- UNIFI_PASSWORD=${UNIFI_PASSWORD}
|
|
|
|
# Synology NAS
|
|
- SYNOLOGY_HOST=${SYNOLOGY_HOST}
|
|
- SYNOLOGY_PORT=${SYNOLOGY_PORT}
|
|
- SYNOLOGY_USERNAME=${SYNOLOGY_USERNAME}
|
|
- SYNOLOGY_PASSWORD=${SYNOLOGY_PASSWORD}
|
|
|
|
# Grafana
|
|
- NEXT_PUBLIC_GRAFANA_HOST=${NEXT_PUBLIC_GRAFANA_HOST}
|
|
- GRAFANA_API_KEY=${GRAFANA_API_KEY}
|
|
|
|
# API Configuration
|
|
- NEXT_PUBLIC_API_BASE_URL=${NEXT_PUBLIC_API_BASE_URL}
|
|
|
|
networks:
|
|
- dashboard-network
|
|
|
|
# Resource limits
|
|
deploy:
|
|
resources:
|
|
limits:
|
|
cpus: "1"
|
|
memory: 512M
|
|
reservations:
|
|
cpus: "0.5"
|
|
memory: 256M
|
|
|
|
# Health check
|
|
healthcheck:
|
|
test:
|
|
[
|
|
"CMD-SHELL",
|
|
"wget --quiet --tries=1 --spider http://localhost:3000 || exit 1",
|
|
]
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 3
|
|
start_period: 40s
|
|
|
|
# Traefik labels
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.http.routers.dashboard.rule=Host(`dashboard.guapo613.beer`)"
|
|
- "traefik.http.routers.dashboard.entrypoints=websecure"
|
|
- "traefik.http.routers.dashboard.tls=true"
|
|
- "traefik.http.services.dashboard.loadbalancer.server.port=3000"
|
|
- "traefik.http.middlewares.dashboard-redirect.redirectscheme.scheme=https"
|
|
- "traefik.http.routers.dashboard-http.rule=Host(`dashboard.guapo613.beer`)"
|
|
- "traefik.http.routers.dashboard-http.entrypoints=web"
|
|
- "traefik.http.routers.dashboard-http.middlewares=dashboard-redirect"
|
|
|
|
networks:
|
|
dashboard-network:
|
|
driver: bridge
|