Variables de entorno globales

TZ

Se utiliza para establecer la zona horaria de la aplicación; por defecto es la zona horaria del sistema operativo.

https://en.wikipedia.org/wiki/List_of_tz_database_time_zones

Warning

Las operaciones relacionadas con el tiempo se procesan según esta zona horaria. Modificar TZ puede afectar los valores de fecha en la base de datos. Para más detalles, consulte «Resumen de fecha y hora».

APP_ENV

Entorno de la aplicación; valor por defecto development. Las opciones disponibles incluyen:

  • production entorno de producción
  • development entorno de desarrollo
APP_ENV=production

APP_KEY

Clave secreta de la aplicación, utilizada para generar tokens de usuario, etc. Modifíquela por su propia clave de aplicación y asegúrese de no divulgarla.

Warning

Si se modifica APP_KEY, los tokens antiguos también dejarán de ser válidos.

APP_KEY=app-key-test

APP_PORT

Puerto de la aplicación; valor por defecto 13000.

APP_PORT=13000

API_BASE_PATH

Prefijo de la dirección de la API de NocoBase; valor por defecto /api/.

API_BASE_PATH=/api/

API_BASE_URL

SERVER_REQUEST_WHITELIST

Lista blanca de destinos permitidos para solicitudes HTTP salientes iniciadas por el servidor. Aplica a solicitudes del lado del servidor desde funciones como nodos de solicitud HTTP en workflows, solicitudes personalizadas y servicios AI.

Cuando esta variable no está configurada, NocoBase sigue permitiendo solicitudes http / https para mantener la compatibilidad con despliegues existentes. Sin embargo, si el destino es una dirección loopback, privada, link-local o metadata, o si un dominio resuelve a una de esas direcciones, el servidor escribe un warning en los logs. Versiones futuras pueden endurecer gradualmente el comportamiento predeterminado. Si tu despliegue necesita acceder a servicios internos, configura una lista blanca explícita con antelación.

Cuando esta variable está configurada, la solicitud inicial y cada destino de redirección deben coincidir con una entrada de la lista blanca. Si una redirección apunta a un host que no coincide, NocoBase se detiene antes de enviar la solicitud redirigida.

Entradas admitidas:

  • Dirección IPv4 exacta, como 192.168.1.10
  • Rango CIDR IPv4, como 10.0.0.0/8
  • Dirección IPv6 exacta, como ::1
  • Rango CIDR IPv6, como fc00::/7
  • Dominio exacto, como api.example.com
  • Subdominio comodín de un solo nivel, como *.example.com

Usa , para separar varios destinos:

SERVER_REQUEST_WHITELIST=api.example.com,*.trusted.com,10.0.0.0/8,127.0.0.1
Note

Si se configura un dominio en la lista blanca, la comprobación usa el host de la URL de la solicitud. En otras palabras, después de configurar internal.example.com, se trata como un destino permitido explícitamente aunque el dominio resuelva a 127.0.0.1 o a una dirección privada.

CLUSTER_MODE

v1.6.0+

Modo de inicio multinúcleo (cluster). Si se configura esta variable, se transmitirá al comando pm2 start como argumento de -i <instances>. Las opciones son las mismas que el parámetro -i de pm2 (consulte PM2: Cluster Mode), incluyendo:

  • max: utilizar el número máximo de núcleos de CPU
  • -1: utilizar el número máximo de núcleos de CPU menos 1
  • <number>: especificar el número de núcleos

El valor por defecto está vacío, lo que significa que no está activado.

Atención

Este modo requiere el uso de Plugins relacionados con el modo cluster; de lo contrario, las funciones de la aplicación pueden presentar anomalías.

Para más información, consulte: Modo cluster.

PLUGIN_PACKAGE_PREFIX

Prefijo del nombre del paquete de Plugin; por defecto: @nocobase/plugin-,@nocobase/preset-.

Por ejemplo, al añadir el Plugin hello al proyecto my-nocobase-app, el nombre completo del paquete del Plugin será @my-nocobase-app/plugin-hello.

PLUGIN_PACKAGE_PREFIX puede configurarse como:

PLUGIN_PACKAGE_PREFIX=@nocobase/plugin-,@nocobase-preset-,@my-nocobase-app/plugin-

Entonces, la correspondencia entre el nombre del Plugin y el nombre del paquete sería la siguiente:

  • El nombre del paquete del Plugin users es @nocobase/plugin-users
  • El nombre del paquete del Plugin nocobase es @nocobase/preset-nocobase
  • El nombre del paquete del Plugin hello es @my-nocobase-app/plugin-hello

DB_DIALECT

Tipo de base de datos. Las opciones disponibles incluyen:

  • mariadb
  • mysql
  • postgres
DB_DIALECT=mysql

DB_HOST

Host de la base de datos (debe configurarse al usar bases de datos MySQL o PostgreSQL).

Valor por defecto: localhost.

DB_HOST=localhost

DB_PORT

Puerto de la base de datos (debe configurarse al usar bases de datos MySQL o PostgreSQL).

  • Puerto por defecto de MySQL y MariaDB: 3306
  • Puerto por defecto de PostgreSQL: 5432
DB_PORT=3306

DB_DATABASE

Nombre de la base de datos (debe configurarse al usar bases de datos MySQL o PostgreSQL).

DB_DATABASE=nocobase

DB_USER

Usuario de la base de datos (debe configurarse al usar bases de datos MySQL o PostgreSQL).

DB_USER=nocobase

DB_PASSWORD

Contraseña de la base de datos (debe configurarse al usar bases de datos MySQL o PostgreSQL).

DB_PASSWORD=nocobase

DB_TABLE_PREFIX

Prefijo de las tablas de la base de datos.

DB_TABLE_PREFIX=nocobase_

DB_UNDERSCORED

Indica si los nombres de tablas y campos de la base de datos se convierten al estilo snake case; valor por defecto false. Si utiliza la base de datos MySQL (MariaDB) y lower_case_table_names=1, entonces DB_UNDERSCORED debe ser true.

Warning

Cuando DB_UNDERSCORED=true, los nombres reales de tablas y campos en la base de datos no coinciden con los que se ven en la interfaz; por ejemplo, orderDetails en la base de datos es order_details.

DB_LOGGING

Interruptor de registro de la base de datos; valor por defecto off. Las opciones disponibles incluyen:

  • on activado
  • off desactivado
DB_LOGGING=on

LOGGER_TRANSPORT

Modo de salida de logs, separados por , cuando hay varios. Valor por defecto en entorno de desarrollo console; en entorno de producción console,dailyRotateFile. Opciones disponibles:

  • console - console.log
  • file - archivo
  • dailyRotateFile - archivo rotado por día
LOGGER_TRANSPORT=console,dailyRotateFile

LOGGER_BASE_PATH

Ruta de almacenamiento de logs basada en archivos; por defecto storage/logs.

LOGGER_BASE_PATH=storage/logs

LOGGER_LEVEL

Nivel de salida de logs; valor por defecto en entorno de desarrollo debug, en entorno de producción info. Opciones disponibles:

  • error
  • warn
  • info
  • debug
  • trace
LOGGER_LEVEL=info

El nivel de salida de logs de la base de datos es debug, controlado por DB_LOGGING para determinar si se emite, sin estar afectado por LOGGER_LEVEL.

LOGGER_MAX_FILES

Número máximo de archivos de log que se conservan.

  • Cuando LOGGER_TRANSPORT es file, el valor por defecto es 10.
  • Cuando LOGGER_TRANSPORT es dailyRotateFile, se utiliza [n]d para representar los días. El valor por defecto es 14d.
LOGGER_MAX_FILES=14d

LOGGER_MAX_SIZE

Rotación de logs por tamaño.

  • Cuando LOGGER_TRANSPORT es file, la unidad es byte, valor por defecto 20971520 (20 * 1024 * 1024).
  • Cuando LOGGER_TRANSPORT es dailyRotateFile, se puede usar [n]k, [n]m, [n]g. Por defecto no está configurado.
LOGGER_MAX_SIZE=20971520

LOGGER_FORMAT

Formato de impresión de logs; por defecto en entorno de desarrollo console, en entorno de producción json. Opciones disponibles:

  • console
  • json
  • logfmt
  • delimiter
LOGGER_FORMAT=json

Referencia: Formato de logs

CACHE_DEFAULT_STORE

Identificador único del modo de caché utilizado, especifica el modo de caché por defecto del lado del servidor. Valor por defecto memory. Opciones integradas:

  • memory
  • redis
CACHE_DEFAULT_STORE=memory

CACHE_MEMORY_MAX

Número máximo de elementos en la caché en memoria; valor por defecto 2000.

CACHE_MEMORY_MAX=2000

CACHE_REDIS_URL

Conexión Redis, opcional. Ejemplo: redis://localhost:6379.

CACHE_REDIS_URL=redis://localhost:6379

TELEMETRY_ENABLED

Activa la recopilación de datos de telemetría; por defecto off.

TELEMETRY_ENABLED=on

TELEMETRY_METRIC_READER

Recolector de métricas de monitoreo activado; por defecto console. Otros valores deben referirse al nombre registrado por el Plugin del recolector correspondiente, por ejemplo prometheus. Cuando hay varios, se separan con ,.

TELEMETRY_METRIC_READER=console,prometheus

TELEMETRY_TRACE_PROCESSOR

Procesador de datos de trazas activado; por defecto console. Otros valores deben referirse al nombre registrado por el Plugin del procesador correspondiente. Cuando hay varios, se separan con ,.

TELEMETRY_TRACE_PROCESSOR=console