Files
git.stella-ops.org/devops/services/symbols/docker-compose.symbols.yaml
2026-01-25 23:27:41 +02:00

78 lines
2.2 KiB
YAML

# =============================================================================
# SYMBOLS SERVER - LOCAL DEVELOPMENT STACK
# =============================================================================
# Symbols server local development environment with PostgreSQL and RustFS.
#
# Usage:
# docker compose -f docker-compose.symbols.yaml up -d
#
# For production, use compose/docker-compose.stella-ops.yml instead.
# =============================================================================
services:
postgres:
image: postgres:18.1-alpine
restart: unless-stopped
environment:
POSTGRES_USER: symbols
POSTGRES_PASSWORD: ${SYMBOLS_DB_PASSWORD:-symbols_dev}
POSTGRES_DB: symbols
volumes:
- postgres-data:/var/lib/postgresql/data
ports:
- "5432:5432"
healthcheck:
test: ["CMD-SHELL", "pg_isready -U symbols -d symbols"]
interval: 10s
timeout: 5s
retries: 5
rustfs:
image: registry.stella-ops.org/stellaops/rustfs:2025.09.2
restart: unless-stopped
command: ["serve", "--listen", "0.0.0.0:8080", "--root", "/data"]
environment:
RUSTFS__LOG__LEVEL: info
RUSTFS__STORAGE__PATH: /data
volumes:
- rustfs-data:/data
ports:
- "9000:8080"
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8080/health"]
interval: 30s
timeout: 10s
retries: 3
symbols:
image: ghcr.io/stella-ops/symbols-server:edge
depends_on:
postgres:
condition: service_healthy
rustfs:
condition: service_healthy
environment:
Storage__Driver: postgres
Storage__Postgres__ConnectionString: "Host=postgres;Port=5432;Database=symbols;Username=symbols;Password=${SYMBOLS_DB_PASSWORD:-symbols_dev}"
Storage__Provider: S3
Storage__S3__Endpoint: http://rustfs:8080
Storage__S3__Bucket: symbols
Storage__S3__UsePathStyle: "true"
Logging__Console__FormatterName: json
ports:
- "8080:8080"
healthcheck:
test: ["CMD", "curl", "-fsS", "http://localhost:8080/healthz"]
interval: 10s
timeout: 5s
retries: 6
start_period: 10s
volumes:
postgres-data:
rustfs-data:
networks:
default:
name: symbols-ci