mengstack-api/docker-compose.yml
MengStack Dev 9148d2f6da
Some checks failed
CI / Build & Test (push) Failing after 33s
feat: Swagger 全量注解 + M8 质量加固
- 37 个端点全部添加 godoc Swagger 注解(RBAC 11 / Org 5 / Audit 1 / Settings 7 / Notification 7)
- 重新生成 docs/(swagger.json/yaml/docs.go)
- M8 质量横切:IP 限流、安全头、Body 限制、结构化日志增强、优雅关闭
- 新增 Dockerfile 多阶段构建 + .dockerignore
- 新增 testutil 测试工具包
- 修复 testutil.go 编译错误
2026-10-03 01:57:39 +08:00

61 lines
1.7 KiB
YAML

version: '3.8'
services:
postgres:
image: postgres:16-alpine
environment:
POSTGRES_DB: ${DB_NAME:-mengstack}
POSTGRES_USER: ${DB_USER:-postgres}
POSTGRES_PASSWORD: ${DB_PASSWORD:-mengstack_dev}
ports:
- "${DB_PORT:-5432}:5432"
volumes:
- pgdata:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U ${DB_USER:-postgres}"]
interval: 5s
timeout: 5s
retries: 5
redis:
image: redis:7-alpine
ports:
- "${REDIS_PORT:-6379}:6379"
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 5s
timeout: 5s
retries: 5
api:
build: .
restart: unless-stopped
ports:
- "${SERVER_PORT:-2222}:2222"
environment:
MENGSTACK_SERVER_PORT: ${SERVER_PORT:-2222}
MENGSTACK_SERVER_MODE: ${SERVER_MODE:-debug}
MENGSTACK_DATABASE_HOST: postgres
MENGSTACK_DATABASE_PORT: 5432
MENGSTACK_DATABASE_USER: ${DB_USER:-postgres}
MENGSTACK_DATABASE_PASSWORD: ${DB_PASSWORD:-mengstack_dev}
MENGSTACK_DATABASE_DBNAME: ${DB_NAME:-mengstack}
MENGSTACK_DATABASE_SSLMODE: disable
MENGSTACK_REDIS_ADDR: redis:6379
MENGSTACK_REDIS_PASSWORD: ${REDIS_PASSWORD:-}
MENGSTACK_REDIS_DB: ${REDIS_DB:-0}
MENGSTACK_JWT_SECRET: ${JWT_SECRET:-change-me-in-production}
MENGSTACK_JWT_ACCESS_EXPIRY_MINUTES: 30
MENGSTACK_JWT_REFRESH_EXPIRY_DAYS: 7
MENGSTACK_JWT_ISSUER: mengstack
MENGSTACK_LOG_LEVEL: ${LOG_LEVEL:-debug}
MENGSTACK_LOG_FORMAT: ${LOG_FORMAT:-console}
depends_on:
postgres:
condition: service_healthy
redis:
condition: service_healthy
volumes:
pgdata: