panels-origin/.env.example
Cursor Agent c2ea43818c
api: compatibilidad S3 con Cloudflare R2 (reemplazo de Contabo)
El SDK de AWS v3 manda checksums CRC32 que R2 no acepta; se calculan
solo cuando el API lo exige. Docs y .env.example apuntan a R2.

Co-authored-by: alberto.martinez <alberto.martinez@mrdev.mx>
2026-09-03 04:40:54 +00:00

77 lines
2.8 KiB
Text

# =============================================================================
# Copiar a `.env` (gitignored) para local / Coolify.
# NUNCA subas `.env` ni `data/*` al repositorio.
#
# Generar cada password/secreto con: openssl rand -hex 24
# =============================================================================
# --- OBLIGATORIAS (producción) ---
SESSION_SECRET=
DOCS_KEY=
# ^ DOCS_KEY debe ser EXACTAMENTE 64 hex (32 bytes): openssl rand -hex 32
SEED_PASSWORD=
# Si la contraseña tiene `$`, en Docker Compose escríbelo como `$$` (ej. `p$$ass` → `p$ass`).
PANEL_LOGIN_URL=https://app.tudominio/login
PORT=8000
# --- Recomendadas en HTTPS (Coolify) ---
COOKIE_SECURE=true
# Solo si expones la API en un host distinto (con proxy /v1 en nginx suele ir vacío)
CORS_ORIGINS=
# --- Opcionales ---
API_KEY=
VCARD_BASE=https://vcard.arctec.com.mx?info=
# SMTP (opcional; también se puede configurar en SaaS → /smtp y queda en panels_platform)
SMTP_HOST=
SMTP_PORT=587
SMTP_USER=
SMTP_PASS=
SMTP_FROM=PANELS <noreply@tudominio>
# =============================================================================
# Postgres (monolito modular: panels_platform separada de panels_product)
# En Coolify, estos apuntan al recurso Postgres gestionado del ambiente
# (ver db/provision/README.md). Para `docker compose up` local, además hay
# que definir las contraseñas de cada rol (siguiente bloque) -- el compose
# arma las URLs solo.
# =============================================================================
DATABASE_URL_PLATFORM=
DATABASE_URL_IAM=
DATABASE_URL_CORE=
# _OWNER: solo para el paso de deploy (Liquibase) y scripts (bootstrap/ETL).
# Nunca usar el rol _owner para el tráfico normal de la API.
DATABASE_URL_PLATFORM_OWNER=
DATABASE_URL_IAM_OWNER=
DATABASE_URL_CORE_OWNER=
# --- Solo para `docker compose up` local (provisiona Postgres/Redis propios) ---
POSTGRES_SUPERUSER_PASSWORD=
PLATFORM_OWNER_PASSWORD=
PLATFORM_APP_PASSWORD=
IAM_OWNER_PASSWORD=
IAM_APP_PASSWORD=
CORE_OWNER_PASSWORD=
CORE_APP_PASSWORD=
# =============================================================================
# Redis (sesiones + cache, con ACL por módulo -- ver db/provision/05-redis-acl.sh)
# =============================================================================
REDIS_URL_IAM=
REDIS_URL_CORE=
# --- Solo para `docker compose up` local ---
IAM_REDIS_PASSWORD=
CORE_REDIS_PASSWORD=
# =============================================================================
# Object storage S3-compatible (Cloudflare R2) -- expedientes/PDFs/logos.
# Sin esto, cae a disco local (solo dev).
# R2: S3_ENDPOINT=https://<ACCOUNT_ID>.r2.cloudflarestorage.com S3_REGION=auto
# =============================================================================
S3_ENDPOINT=
S3_BUCKET=
S3_REGION=auto
S3_ACCESS_KEY_ID=
S3_SECRET_ACCESS_KEY=