57 lines
1.6 KiB
YAML
57 lines
1.6 KiB
YAML
version: "3.8"
|
|
|
|
services:
|
|
galvanize:
|
|
image: aitiome/galvanize:latest
|
|
container_name: galvanize
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile
|
|
# Network mode must be "host" for Wake-on-LAN broadcast packets
|
|
# to reach devices on the local network
|
|
network_mode: host
|
|
volumes:
|
|
# Persistent configuration storage
|
|
- ./config:/app/config
|
|
environment:
|
|
# Server configuration
|
|
- GALVANIZE_HOST=0.0.0.0
|
|
- GALVANIZE_PORT=8080
|
|
- GALVANIZE_WEBUI=true
|
|
# Authentication
|
|
- GALVANIZE_AUTH_MODE=basic
|
|
# OIDC settings (uncomment to enable)
|
|
# - GALVANIZE_AUTH_OIDC_ENABLED=true
|
|
# - GALVANIZE_AUTH_OIDC_ISSUER=https://auth.example.com
|
|
# - GALVANIZE_AUTH_OIDC_CLIENT_ID=galvanize
|
|
# - OIDC_CLIENT_SECRET=${OIDC_CLIENT_SECRET}
|
|
# MQTT settings (uncomment to enable)
|
|
# - GALVANIZE_MQTT_ENABLED=true
|
|
# - GALVANIZE_MQTT_BROKER=mqtt://mosquitto:1883
|
|
restart: unless-stopped
|
|
healthcheck:
|
|
test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:8080/api/v1/health"]
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 3
|
|
start_period: 10s
|
|
|
|
# Optional: MQTT Broker
|
|
# Uncomment this section if you want to use MQTT
|
|
# mosquitto:
|
|
# image: eclipse-mosquitto:2
|
|
# container_name: galvanize-mqtt
|
|
# ports:
|
|
# - "1883:1883"
|
|
# - "9001:9001"
|
|
# volumes:
|
|
# - ./mosquitto/config:/mosquitto/config
|
|
# - ./mosquitto/data:/mosquitto/data
|
|
# - ./mosquitto/log:/mosquitto/log
|
|
# restart: unless-stopped
|
|
|
|
volumes:
|
|
config:
|
|
driver: local
|
|
|