services: gpon-monitoring-app: build: context: . args: LISTEN_PORT: ${LISTEN_PORT:-8080} container_name: gpon-monitoring-app restart: unless-stopped expose: - "${LISTEN_PORT:-8080}" volumes: - ./data/rrd:/data/rrd env_file: - .env environment: - TZ=Europe/Warsaw networks: - gpon-monitoring-net healthcheck: test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:${LISTEN_PORT:-8080}/api/current"] interval: 30s timeout: 10s retries: 3 start_period: 40s caddy: image: caddy:alpine container_name: gpon-monitoring-caddy restart: unless-stopped ports: - "${EXTERNAL_PORT:-8080}:80" environment: - LISTEN_PORT=${LISTEN_PORT:-8080} volumes: - ./Caddyfile:/etc/caddy/Caddyfile:ro depends_on: - gpon-monitoring-app networks: - gpon-monitoring-net networks: gpon-monitoring-net: driver: bridge