From 5a0af6a64b7d31e9baf4cb996908461331d1f892 Mon Sep 17 00:00:00 2001 From: BalconyJH Date: Wed, 9 Apr 2025 15:52:28 +0800 Subject: [PATCH] :wrench: Add Docker Compose configuration for PostgreSQL, Redis, and monitoring stack --- docker-compose-dev.yml | 67 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 docker-compose-dev.yml diff --git a/docker-compose-dev.yml b/docker-compose-dev.yml new file mode 100644 index 00000000..c5375f41 --- /dev/null +++ b/docker-compose-dev.yml @@ -0,0 +1,67 @@ +services: + db: + image: postgres:15 + ports: + - "5432:5432" + environment: + POSTGRES_USER: postgres + POSTGRES_PASSWORD: password + POSTGRES_DB: zhenxun + volumes: + - pgdata:/var/lib/postgresql/data + labels: + - "prometheus.io/scrape=true" + - "prometheus.io/port=9187" + + postgres-exporter: + image: prometheuscommunity/postgres-exporter + environment: + DATA_SOURCE_NAME: "postgresql://postgres:password@db:5432/zhenxun?sslmode=disable" + ports: + - "9187:9187" + depends_on: + - db + + redis: + image: redis:7 + ports: + - "6379:6379" + labels: + - "prometheus.io/scrape=true" + - "prometheus.io/port=9121" + + redis-exporter: + image: oliver006/redis_exporter + environment: + REDIS_ADDR: redis://redis:6379 + ports: + - "9121:9121" + depends_on: + - redis + + prometheus: + image: prom/prometheus + ports: + - "9090:9090" + volumes: + - ./prometheus.yml:/etc/prometheus/prometheus.yml + - prometheus_data:/prometheus + command: + - '--config.file=/etc/prometheus/prometheus.yml' + - '--storage.tsdb.path=/prometheus' + - '--web.console.libraries=/etc/prometheus/console_libraries' + - '--web.console.templates=/etc/prometheus/consoles' + + grafana: + image: grafana/grafana + ports: + - "3000:3000" + volumes: + - grafana_data:/var/lib/grafana + depends_on: + - prometheus + +volumes: + pgdata: + prometheus_data: + grafana_data: