Ir al contenido
Q
QuoteNode

Installation

Variables de entorno de despliegue

Variables de entorno mínimas usadas por las guías de instalación, con enlaces a la referencia completa.

Variables de entorno de despliegue

Esta página lista las variables que la mayoría de operadores necesitan durante la instalación. Para el catálogo completo, consulta Referencia de variables de entorno.

Variables principales requeridas

Variable Propósito
DB_URL JDBC URL para PostgreSQL, normalmente jdbc:postgresql://postgres:5432/quotenode dentro de Docker Compose.
DB_NAME Nombre de la base de datos PostgreSQL.
DB_USERNAME Usuario de aplicación de PostgreSQL.
DB_PASSWORD Contraseña de PostgreSQL. Usa un valor aleatorio largo.
DB_ENCRYPTION_KEY Clave hex de 64 caracteres para el cifrado a nivel de aplicación. Guárdala de forma segura.
TIMING_TOKEN_SECRET Secreto HMAC para las comprobaciones de seguridad de timing-token.
PUBLIC_LINK_PASSWORD_SESSION_SECRET Secreto para las sesiones de enlaces públicos protegidos con contraseña o PIN.
CORS_ALLOWED_ORIGINS Orígenes de navegador exactos permitidos para llamar al backend.

Genera secretos en Linux/macOS:

openssl rand -hex 32
openssl rand -base64 32

Variables de URL pública

Variable Propósito
CORS_ALLOWED_ORIGINS Debe coincidir exactamente con la URL del navegador, por ejemplo https://crm.example.com.
NOTIFICATIONS_PUBLIC_PREFERENCES_URL URL pública para los enlaces de preferencias de notificación, por ejemplo https://crm.example.com/notifications/preferences.
DOMAIN Usada por despliegues de Docker Compose con proxy interno. Coolify normalmente gestiona los dominios fuera de la aplicación.
SERVICE_URL_FRONTEND Variable de compatibilidad opcional para plantillas de operador y futura automatización de despliegue; el archivo compose actual de Coolify no la consume directamente. Mantenla alineada con el origen del frontend si tu despliegue la usa.

Variables de correo electrónico

Variable Propósito
SMTP_HOST Nombre de host del servidor SMTP.
SMTP_PORT Puerto SMTP, normalmente 587.
SMTP_USERNAME Nombre de usuario de la cuenta SMTP.
SMTP_PASSWORD Contraseña SMTP o contraseña de aplicación.
SMTP_AUTH Normalmente true para SMTP de producción.
SMTP_STARTTLS Normalmente true para el puerto 587.
NOTIFICATIONS_ENABLED Habilita las notificaciones.
NOTIFICATIONS_EMAIL_ENABLED Habilita la entrega por correo de las notificaciones.

Variables de PDF, backup y seguridad

Variable Valor recomendado en beta Notas
PDF_ENABLED true Requiere Gotenberg en el stack.
FEATURE_2FA_ENABLED true Habilita los flujos de autenticación de dos factores.
SECURITY_BOT_DETECTION_ENABLED true Mantiene activas las protecciones de bots en enlaces públicos.
SECURITY_TRUSTED_PROXIES vacío (autodetectado) Pares de reverse proxy de confianza adicionales (IP/CIDR literales y/o nombres de host de servicio). Normalmente déjalo vacío: la IP del cliente se detecta automáticamente tras proxies internos (rangos privados/loopback) y CDNs como Cloudflare (vía CF-Connecting-IP). Defínelo solo para un proxy inusual cuyo par de transporte sea una dirección pública. Las cabeceras de reenvío de un par directo (no interno) siempre se ignoran. Verifica el modo del resolutor en Administración → Seguridad → estado efectivo.
SECURITY_IP_WHITELIST vacío Lista blanca de IP del operador opcional (IP/CIDR separados por comas). Cuando se activa, protege toda la superficie de administración, incluidas las pantallas de inicio de sesión y 2FA. Prevalece sobre el ajuste en la aplicación y se aplica al arrancar (sin auto-reversión — confirma que tu propia dirección está incluida).
SECURITY_IP_WHITELIST_FORCE_DISABLE false Emergencia: pon true + reinicia para recuperarte de un bloqueo de la lista de IP (incluido no poder iniciar sesión). Solo ENV.
SECURITY_IP_WHITELIST_CONFIRMATION_WINDOW_SECONDS 120 Cuánto tiempo una activación/restricción en la aplicación queda pendiente antes de revertirse automáticamente a la lista anterior si tu sesión no vuelve a confirmar (seguridad ante bloqueos). No se aplica a la variable ENV anterior.
BACKUP_ENABLED true para producción, opcional para la primera prueba local Úsalo con un proceso de restauración probado.
BACKUP_CRON 0 0 2 * * * A las 02:00 diarias por defecto.
GEOIP_ENABLED false Solo interruptor de aplicación por país — también el interruptor de emergencia. La base se carga y se actualiza de forma independiente (ver GEOIP_AUTO_UPDATE), por lo que puede estar lista mientras la aplicación está desactivada. Pon false + reinicia para recuperarte de un bloqueo de país por GeoIP — esto desactiva la aplicación de forma fiable, independientemente de que haya una base de datos.
SECURITY_GEOIP_ALLOWED_COUNTRIES vacío Lista de países permitidos ISO 3166-1 alpha-2 (p. ej. PL,DE); en mayúsculas y validada. Vacío = sin restricción.
LOG_LEVEL INFO para el primer despliegue, reducir más tarde si es necesario Usa los diagnósticos de administrador para la escalada temporal.

Variables de comprobación de release

Variable Propósito
VITE_RELEASE_CHECK_ENABLED Habilita comprobaciones de release upstream solo para administradores.
VITE_RELEASE_MANIFEST_URL Por defecto https://quotenode.dev/releases/latest.json.
APP_VERSION Versión de release o tag de imagen. Puede estar vacío para despliegues desde fuente.
APP_CHANNEL alpha, beta, rc, dev o stable.
APP_COMMIT_SHA Commit SHA incrustado en los metadatos de build cuando está disponible.
APP_BUILD_TIME Timestamp de build.
APP_BUILD_NUMBER Número de build de CI.
APP_SOURCE_REF Rama o tag de origen.
APP_IMAGE_TAG Tag de imagen seleccionado por el despliegue.

Seguridad de licencias

Nunca habilites el bypass de firma en un despliegue real:

LICENSE_SKIP_SIGNATURE_CHECK=false

Configúralo explícitamente a false en entornos de producción y beta. El archivo compose usa false por defecto cuando se omite, pero los despliegues reales no deben depender de un valor implícito para un control de seguridad de licencia. Usa true solo en entornos de desarrollo locales desechables.

Last reviewed: Recently