85 lines
2 KiB
YAML
85 lines
2 KiB
YAML
version: '3.4'
|
|
|
|
name: wave
|
|
services:
|
|
web:
|
|
image: ${DOCKER_REGISTRY-}wave
|
|
build:
|
|
context: .
|
|
dockerfile: Wave/Dockerfile
|
|
restart: unless-stopped
|
|
ports:
|
|
- "80:8080"
|
|
links:
|
|
- database:db
|
|
environment:
|
|
- "TZ=Europe/Berlin"
|
|
- "WAVE_ConnectionStrings__DefaultConnection=Host=db; Username=wave; Password=development; Include Error Detail=true"
|
|
- "WAVE_ConnectionStrings__Redis=redis,password=development"
|
|
- "WAVE_Loki=http://loki:3100"
|
|
- "WAVE_Features__Telemetry=true"
|
|
volumes:
|
|
- wave-files:/app/files
|
|
- wave-config:/configuration
|
|
depends_on:
|
|
database:
|
|
condition: service_started
|
|
database:
|
|
image: postgres:16.1-alpine
|
|
restart: unless-stopped
|
|
environment:
|
|
- "POSTGRES_DB=wave"
|
|
- "POSTGRES_USER=wave"
|
|
- "POSTGRES_PASSWORD=development"
|
|
volumes:
|
|
- wave-db:/var/lib/postgresql/data
|
|
redis:
|
|
image: redis:7-alpine
|
|
restart: unless-stopped
|
|
command: redis-server --requirepass development --save 60 1 --loglevel warning
|
|
volumes:
|
|
- wave-redis:/data
|
|
|
|
loki:
|
|
image: grafana/loki:master
|
|
ports:
|
|
- 3100:3100
|
|
healthcheck:
|
|
test: wget -q --tries=1 -O- http://localhost:3100/ready
|
|
interval: 3s
|
|
timeout: 3s
|
|
retries: 10
|
|
start_period: 10s
|
|
grafana:
|
|
image: grafana/grafana:master
|
|
ports:
|
|
- 3000:3000
|
|
volumes:
|
|
- ./provisioning:/etc/grafana/provisioning
|
|
environment:
|
|
- GF_AUTH_ANONYMOUS_ENABLED=true
|
|
- GF_AUTH_ANONYMOUS_ORG_ROLE=Admin
|
|
- GF_AUTH_DISABLE_LOGIN_FORM=true
|
|
depends_on:
|
|
loki:
|
|
condition: service_healthy
|
|
prometheus:
|
|
image: prom/prometheus:v2.45.0
|
|
restart: unless-stopped
|
|
ports:
|
|
- 9090:9090
|
|
volumes:
|
|
- ./prometheus:/etc/prometheus
|
|
|
|
mailhog:
|
|
image: mailhog/mailhog:latest
|
|
restart: unless-stopped
|
|
ports:
|
|
- 8080:8025
|
|
profiles: ["smtp-debug"]
|
|
|
|
volumes:
|
|
wave-files:
|
|
wave-config:
|
|
wave-db:
|
|
wave-redis: |