2026-06-04 17:58:54 +07:00
|
|
|
version: '3.9'
|
|
|
|
|
|
|
|
|
|
services:
|
|
|
|
|
db:
|
|
|
|
|
image: postgres:17.7
|
|
|
|
|
container_name: monitoring-db
|
|
|
|
|
environment:
|
|
|
|
|
POSTGRES_DB: monitoring_db
|
|
|
|
|
POSTGRES_USER: adminMonitoring
|
|
|
|
|
POSTGRES_PASSWORD: monitoringDbApp
|
|
|
|
|
volumes:
|
|
|
|
|
- postgres_data:/var/lib/postgresql/data
|
|
|
|
|
ports:
|
|
|
|
|
- "5353:5432"
|
|
|
|
|
restart: unless-stopped
|
|
|
|
|
|
|
|
|
|
monitoring:
|
|
|
|
|
build: .
|
|
|
|
|
container_name: monitoring-backend
|
|
|
|
|
ports:
|
|
|
|
|
- "${SERVER_PORT:-8083}:${SERVER_PORT:-8083}"
|
|
|
|
|
environment:
|
|
|
|
|
SPRING_PROFILES_ACTIVE: prod
|
|
|
|
|
POSTGRES_HOST: db
|
|
|
|
|
POSTGRES_PORT: 5432
|
|
|
|
|
POSTGRES_DB: monitoring_db
|
|
|
|
|
POSTGRES_USER: adminMonitoring
|
|
|
|
|
POSTGRES_PASSWORD: monitoringDbApp
|
|
|
|
|
SERVER_PORT: ${SERVER_PORT:-8083}
|
2026-06-11 11:07:34 +07:00
|
|
|
# SPRING_KAFKA_BOOTSTRAP_SERVERS: kafka:9092
|
2026-06-04 17:58:54 +07:00
|
|
|
depends_on:
|
|
|
|
|
- db
|
|
|
|
|
restart: unless-stopped
|
2026-06-11 11:07:34 +07:00
|
|
|
networks:
|
|
|
|
|
- app-network
|
2026-06-04 17:58:54 +07:00
|
|
|
|
|
|
|
|
kafka:
|
|
|
|
|
image: apache/kafka:latest
|
|
|
|
|
container_name: kafka
|
|
|
|
|
ports:
|
|
|
|
|
- "9092:9092"
|
|
|
|
|
environment:
|
|
|
|
|
KAFKA_NODE_ID: 1
|
|
|
|
|
KAFKA_PROCESS_ROLES: 'broker,controller'
|
|
|
|
|
KAFKA_CONTROLLER_QUORUM_VOTERS: '1@kafka:9093'
|
|
|
|
|
KAFKA_LISTENERS: 'PLAINTEXT://0.0.0.0:9092,CONTROLLER://0.0.0.0:9093'
|
|
|
|
|
KAFKA_ADVERTISED_LISTENERS: 'PLAINTEXT://kafka:9092'
|
|
|
|
|
KAFKA_CONTROLLER_LISTENER_NAMES: 'CONTROLLER'
|
|
|
|
|
KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: 'CONTROLLER:PLAINTEXT,PLAINTEXT:PLAINTEXT'
|
|
|
|
|
KAFKA_AUTO_CREATE_TOPICS_ENABLE: 'true'
|
|
|
|
|
KAFKA_DELETE_TOPIC_ENABLE: 'true'
|
|
|
|
|
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
|
|
|
|
|
KAFKA_DEFAULT_REPLICATION_FACTOR: 1
|
|
|
|
|
KAFKA_MIN_INSYNC_REPLICAS: 1
|
|
|
|
|
volumes:
|
|
|
|
|
- kafka_data:/var/lib/kafka/data
|
2026-06-11 11:07:34 +07:00
|
|
|
networks:
|
|
|
|
|
- app-network
|
2026-06-04 17:58:54 +07:00
|
|
|
|
|
|
|
|
kafka-ui:
|
|
|
|
|
image: provectuslabs/kafka-ui:latest
|
|
|
|
|
container_name: kafka-ui
|
|
|
|
|
ports:
|
|
|
|
|
- "8010:8080"
|
|
|
|
|
environment:
|
|
|
|
|
DYNAMIC_CONFIG_ENABLED: 'true'
|
|
|
|
|
KAFKA_CLUSTERS_0_NAME: 'local-cluster'
|
|
|
|
|
KAFKA_CLUSTERS_0_BOOTSTRAPSERVERS: 'kafka:9092'
|
|
|
|
|
depends_on:
|
|
|
|
|
- kafka
|
2026-06-11 11:07:34 +07:00
|
|
|
networks:
|
|
|
|
|
- app-network
|
2026-06-04 17:58:54 +07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
volumes:
|
|
|
|
|
kafka_data:
|
2026-06-11 11:07:34 +07:00
|
|
|
postgres_data:
|
|
|
|
|
|
|
|
|
|
networks:
|
|
|
|
|
app-network:
|
|
|
|
|
external: true
|