opendtu-logger/docker/compose.with-database-grafana.yml

62 lines
No EOL
1.5 KiB
YAML

version: '3.8'
services:
timescaledb:
image: timescale/timescaledb:latest-pg16
environment:
POSTGRES_USER: ${PG_USER}
POSTGRES_PASSWORD: ${PG_PASSWORD}
POSTGRES_DB: ${PG_DB}
ports:
- "5432:5432"
networks:
- internal
volumes:
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
- /opt/opendtu-logger/database:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U ${PG_USER}"]
interval: 5s
timeout: 5s
retries: 20
opendtu-logger:
image: git.hollander.online/energy/opendtu-logger:main
environment:
DB_URL: ${DB_URL}
REMOTE_URL: ${REMOTE_URL}
TIMESCALEDB_ENABLED: ${TIMESCALEDB_ENABLED}
TZ: ${TZ}
depends_on:
timescaledb:
condition: service_healthy
networks:
- internal
volumes:
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
grafana:
image: grafana/grafana:latest
container_name: grafana
restart: always
user: "1000:1000"
ports:
- "3000:3000"
networks:
- internal
volumes:
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
- opendtu_logger_grafana:/var/lib/grafana:rw
environment:
GF_DATAPROXY_ROW_LIMIT: 5000000
# GF_LOG_FILTERS: rendering:debug
healthcheck:
test: ["CMD-SHELL", "curl -f localhost:3000/api/health && echo 'ready'"]
interval: 10s
retries: 30
networks:
internal:
attachable: true
volumes:
opendtu_logger_grafana: