Files
SQL/docker-compose.yml
T

60 lines
1.8 KiB
YAML

# ============================================================================
# Business Analytics Database - Docker Compose Configuration
# ============================================================================
# IMPORTANT: Before running docker-compose up, ensure proper permissions:
# Run: ./scripts/fix-permissions.sh
# Or: sudo chown -R $USER:$USER . && chmod -R 755 data/ schema/ scripts/
# ============================================================================
services:
postgres:
image: postgres:16-alpine
container_name: business_analytics_db
environment:
POSTGRES_DB: business_analytics
POSTGRES_USER: data_analyst
POSTGRES_PASSWORD: SecurePass123!
PGDATA: /var/lib/postgresql/data/pgdata
ports:
- "5432:5432"
volumes:
- postgres_data:/var/lib/postgresql/data
- ./schema:/docker-entrypoint-initdb.d # Bind mount - requires proper permissions
- ./data:/data # Bind mount - requires proper permissions
networks:
- analytics_network
healthcheck:
test: ["CMD-SHELL", "pg_isready -U data_analyst -d business_analytics"]
interval: 10s
timeout: 5s
retries: 5
restart: unless-stopped
db-ui:
image: ghcr.io/n7olkachev/db-ui:latest
platform: unknown/unknown
container_name: business_analytics_ui
environment:
POSTGRES_HOST: postgres
POSTGRES_USER: data_analyst
POSTGRES_PASSWORD: SecurePass123!
POSTGRES_DB: business_analytics
POSTGRES_PORT: 5432
ports:
- "3000:3000"
networks:
- analytics_network
depends_on:
postgres:
condition: service_healthy
restart: unless-stopped
networks:
analytics_network:
driver: bridge
volumes:
postgres_data:
driver: local