tokenbridge-monitor/docker-compose.dev.yml

70 lines
1.7 KiB
YAML

version: '3.8'
services:
postgres:
image: postgres:13-alpine
volumes:
- db:/var/lib/postgresql/data
environment:
POSTGRES_DB: db
POSTGRES_PASSWORD: pass
ports:
- "5432:5432"
shm_size: 256mb
monitor:
build: .
env_file:
- .env
ports:
- "3333:3333"
volumes:
- ./config.yml:/app/config.yml
fix_block_timestamps:
build: .
entrypoint: ["./fix_block_timestamps"]
env_file:
- .env
volumes:
- ./config.yml:/app/config.yml
reprocess_block_range:
build: .
entrypoint: [ "./reprocess_block_range" ]
env_file:
- .env
volumes:
- ./config.yml:/app/config.yml
grafana:
image: grafana/grafana:8.1.5
volumes:
- ./grafana/provisioning:/etc/grafana/provisioning
- ./grafana/dashboards:/etc/grafana/dashboards
- grafana-storage:/var/lib/grafana
environment:
PG_HOST: 'postgres:5432'
PG_USER: 'read_user'
PG_PASSWORD: 'read_user_pass'
PG_DB: 'db'
PROM_USER: 'admin'
PROM_HOST: 'http://prometheus:9090'
ports:
- "3000:3000"
prometheus:
image: prom/prometheus:v2.30.0
volumes:
- ./prometheus:/etc/prometheus
- prom-storage:/prometheus
command: ["--config.file=/etc/prometheus/prometheus.yml", "--web.enable-lifecycle"]
ports:
- "9090:9090"
alertmanager:
image: prom/alertmanager:v0.23.0
command: ["--config.file=/etc/prometheus/alertmanager.yml", "--storage.path=/alertmanager", "--web.external-url=http://localhost:9093"]
volumes:
- ./prometheus:/etc/prometheus
- alertmanager-storage:/alertmanager
ports:
- "9093:9093"
volumes:
db:
grafana-storage:
prom-storage:
alertmanager-storage: