57 lines
1.5 KiB
YAML
57 lines
1.5 KiB
YAML
---
|
|
volumes:
|
|
grafana-data:
|
|
driver: local
|
|
prometheus-data:
|
|
driver: local
|
|
networks:
|
|
default:
|
|
external:
|
|
name: grafana-prometheus
|
|
services:
|
|
grafana:
|
|
image: docker.io/grafana/grafana-oss:10.4.2
|
|
container_name: grafana
|
|
environment:
|
|
- GF_SECURITY_ADMIN_PASSWORD=admin
|
|
- GF_LOG_LEVEL=debug
|
|
ports:
|
|
- "3000:3000"
|
|
volumes:
|
|
- grafana-data:/var/lib/grafana
|
|
restart: unless-stopped
|
|
networks:
|
|
- default
|
|
prometheus:
|
|
image: docker.io/prom/prometheus:v2.51.2
|
|
container_name: prometheus
|
|
ports:
|
|
- 9090:9090
|
|
command: "--config.file=/etc/prometheus/prometheus.yaml"
|
|
volumes:
|
|
- ./config/prometheus.yaml:/etc/prometheus/prometheus.yaml:ro # RO Read-only
|
|
- prometheus-data:/prometheus
|
|
restart: unless-stopped
|
|
networks:
|
|
- default
|
|
https_portal:
|
|
container_name: https_portal
|
|
image: "steveltn/https-portal:1.21"
|
|
restart: unless-stopped
|
|
user: "root"
|
|
networks:
|
|
- default
|
|
ports:
|
|
- "80:80"
|
|
- "443:443"
|
|
environment:
|
|
STAGE: "production" # Use Let's Encrypt production server
|
|
WEBSOCKET: "true" # Enable websocket support
|
|
DEBUG: "true"
|
|
RENEW_MARGIN_DAYS: 30
|
|
CLIENT_MAX_BODY_SIZE: 0
|
|
# FORCE_RENEW: 'true'
|
|
DOMAINS: 'grafana.phx-erp.de -> grafana:3000, prometheus.phx-erp.de -> prometheus:9090'
|
|
volumes:
|
|
- ./https_portal/data:/var/lib/https-portal # ssl_certs, vhost.d, htdocs
|
|
- ./https_portal/log:/var/log/nginx # nginx logs |