Files
Sun-ZhenXing 902627bbc2 feat: add paca
2026-06-23 11:26:44 +08:00

114 lines
5.2 KiB
Bash

# Paca Configuration
# Paca application version (applies to API, Web, and Realtime images)
# Individual image overrides: PACA_API_IMAGE, PACA_WEB_IMAGE, PACA_REALTIME_IMAGE
PACA_VERSION=0.5.2
# Infrastructure versions
PACA_POSTGRES_VERSION=16-alpine
PACA_VALKEY_VERSION=8-alpine
PACA_MINIO_VERSION=latest
PACA_NGINX_VERSION=1.27-alpine
# Port Configuration
PACA_PORT_OVERRIDE=80
# Environment
PACA_ENVIRONMENT=production
# Timezone
TZ=UTC
# ── Database ───────────────────────────────────────────────────────────────
PACA_POSTGRES_DB=paca
PACA_POSTGRES_USER=paca
# IMPORTANT: Change this to a strong password in production!
PACA_POSTGRES_PASSWORD=changeme
# Set PACA_DATABASE_URL to use an external Postgres instead of the bundled one.
# PACA_DATABASE_URL=postgres://user:password@host:5432/paca?sslmode=disable
# ── Cache ──────────────────────────────────────────────────────────────────
# Set PACA_REDIS_URL to use an external Valkey/Redis instead of the bundled one.
# PACA_REDIS_URL=redis://host:6379/0
# ── Security ───────────────────────────────────────────────────────────────
# IMPORTANT: Change all of these in production!
# Generate with: openssl rand -hex 32
PACA_JWT_SECRET=changeme_jwt_secret_minimum_32_chars
PACA_ENCRYPTION_KEY=
PACA_ADMIN_USERNAME=admin
PACA_ADMIN_PASSWORD=changeme
PACA_AGENT_API_KEY=
# Cookie security: set to true when serving over HTTPS
PACA_COOKIE_SECURE=false
# JWT TTL settings
PACA_JWT_ACCESS_TTL=15m
PACA_JWT_REFRESH_TTL=168h
PACA_JWT_REFRESH_SESSION_TTL=24h
# ── Object Storage ─────────────────────────────────────────────────────────
# Default: bundled MinIO. Set STORAGE_PROVIDER=s3 for AWS S3.
PACA_STORAGE_PROVIDER=minio
PACA_STORAGE_ENDPOINT=paca-minio:9000
PACA_STORAGE_PUBLIC_URL=http://localhost/storage
PACA_STORAGE_REGION=us-east-1
PACA_STORAGE_BUCKET=paca
PACA_STORAGE_ACCESS_KEY_ID=minioadmin
PACA_STORAGE_SECRET_ACCESS_KEY=minioadmin
PACA_STORAGE_USE_SSL=false
# ── Public URL ─────────────────────────────────────────────────────────────
# The base URL where Paca will be accessed (used for plugin callbacks, etc.)
PACA_PUBLIC_URL=http://localhost
# ── CORS Origins ───────────────────────────────────────────────────────────
# Defaults to PACA_PUBLIC_URL if not set
# PACA_CORS_ORIGINS=http://localhost
# ── Logging ────────────────────────────────────────────────────────────────
LOG_LEVEL=info
# ── Resource Limits - PostgreSQL ───────────────────────────────────────────
PACA_POSTGRES_CPU_LIMIT=1.0
PACA_POSTGRES_CPU_RESERVATION=0.1
PACA_POSTGRES_MEMORY_LIMIT=1G
PACA_POSTGRES_MEMORY_RESERVATION=256M
# ── Resource Limits - Valkey ───────────────────────────────────────────────
PACA_VALKEY_CPU_LIMIT=0.5
PACA_VALKEY_CPU_RESERVATION=0.1
PACA_VALKEY_MEMORY_LIMIT=512M
PACA_VALKEY_MEMORY_RESERVATION=128M
# ── Resource Limits - MinIO ────────────────────────────────────────────────
PACA_MINIO_CPU_LIMIT=0.5
PACA_MINIO_CPU_RESERVATION=0.1
PACA_MINIO_MEMORY_LIMIT=512M
PACA_MINIO_MEMORY_RESERVATION=256M
# ── Resource Limits - API ──────────────────────────────────────────────────
PACA_API_CPU_LIMIT=1.0
PACA_API_CPU_RESERVATION=0.1
PACA_API_MEMORY_LIMIT=1G
PACA_API_MEMORY_RESERVATION=256M
# ── Resource Limits - Web ──────────────────────────────────────────────────
PACA_WEB_CPU_LIMIT=0.5
PACA_WEB_CPU_RESERVATION=0.1
PACA_WEB_MEMORY_LIMIT=512M
PACA_WEB_MEMORY_RESERVATION=128M
# ── Resource Limits - Realtime ─────────────────────────────────────────────
PACA_REALTIME_CPU_LIMIT=0.5
PACA_REALTIME_CPU_RESERVATION=0.1
PACA_REALTIME_MEMORY_LIMIT=512M
PACA_REALTIME_MEMORY_RESERVATION=128M
# ── Resource Limits - Gateway ──────────────────────────────────────────────
PACA_GATEWAY_CPU_LIMIT=0.5
PACA_GATEWAY_CPU_RESERVATION=0.1
PACA_GATEWAY_MEMORY_LIMIT=256M
PACA_GATEWAY_MEMORY_RESERVATION=128M