在项目根目录下的 .env 文件里设置环境变量,修改环境变量之后需要 kill 应用进程,重新启动。
修改 docker-compose.yml 配置,在 enviroment 参数里设置环境变量。示例:
也可以使用 env_file, 即可在 .env 文件中设置环境变量。示例:
修改环境变量之后,需要重建 app 容器。
用于设置应用的时区,默认为操作系统时区。
https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
与时间相关的操作会依据该时区进行处理,修改 TZ 可能会影响数据库里的日期值,详情查看「日期 & 时间概述」
应用环境,默认值 development,可选项包括:
production 生产环境development 开发环境应用的密钥,用于生成用户 token 等,修改为自己的应用密钥,并确保不对外泄露
如果 APP_KEY 修改了,旧的 token 也会随之失效
应用端口,默认值 13000
NocoBase API 地址前缀,默认值 /api/
v1.6.0+
多核(集群)启动模式,如配置了该变量,会透传至 pm2 start 命令中作为 -i <instances> 的参数。可选项与 pm2 -i 参数一致(参考 PM2: Cluster Mode),包括:
max:使用 CPU 最大核数-1:使用 CPU 最大核数 -1<number>:指定核数默认值为空,代表不开启。
该模式需要配合集群模式相关的插件使用,否则应用的功能可能出现异常。
更多可参考:集群模式。
插件包名前缀,默认为:@nocobase/plugin-,@nocobase/preset-。
例如,添加 hello 插件到 my-nocobase-app 项目,插件的完整包名则为 @my-nocobase-app/plugin-hello。
PLUGIN_PACKAGE_PREFIX 可以配置为:
则插件名称和包名对应关系如下:
users 插件的包名为 @nocobase/plugin-usersnocobase 插件的包名为 @nocobase/preset-nocobasehello 插件的包名为 @my-nocobase-app/plugin-hello数据库类型,可选项包括:
mariadbmysqlpostgres数据库主机(使用 MySQL 或 PostgreSQL 数据库时需要配置)
默认值 localhost
数据库端口(使用 MySQL 或 PostgreSQL 数据库时需要配置)
数据库名(使用 MySQL 或 PostgreSQL 数据库时需要配置)
数据库用户(使用 MySQL 或 PostgreSQL 数据库时需要配置)
数据库密码(使用 MySQL 或 PostgreSQL 数据库时需要配置)
数据表前缀
数据库表名、字段名是否转为 snake case 风格,默认为 false。如果使用 MySQL(MariaDB)数据库,并且 lower_case_table_names=1,则 DB_UNDERSCORED 必须为 true
当 DB_UNDERSCORED=true 时,数据库实际的表名和字段名与界面所见的并不一致,如 orderDetails 数据库里的是 order_details
数据库日志开关,默认值 off,可选项包括:
on 打开off 关闭数据库连接池最大连接数,默认值 5。
数据库连接池最小连接数,默认值 0。
数据库连接池空闲时间,默认值 10000(10 秒)。
数据库连接池获取连接最大等待时间,默认值 60000(60 秒)。
数据库连接池连接最大存活时间,默认值 1000(1 秒)。
连接在被丢弃并替换之前可被使用的次数,默认值 0(不限制)。
日志输出方式,多个用 , 分隔。开发环境默认值 console, 生产环境默认值 console,dailyRotateFile.
可选项:
console - console.logfile - 文件dailyRotateFile - 按天滚动文件基于文件的日志存储路径,默认为 storage/logs。
输出日志级别,开发环境默认值 debug, 生产环境默认值 info. 可选项:
errorwarninfodebugtrace数据库日志输出级别为 debug, 由 DB_LOGGING 控制是否输出,不受 LOGGER_LEVEL 影响。
最大保留日志文件数。
LOGGER_TRANSPORT 为 file 时,默认值为 10.LOGGER_TRANSPORT 为 dailyRotateFile, 使用 [n]d 代表天数。默认值为 14d.按大小滚动日志。
LOGGER_TRANSPORT 为 file 时,单位为 byte, 默认值为 20971520 (20 * 1024 * 1024).LOGGER_TRANSPORT 为 dailyRotateFile, 可以使用 [n]k, [n]m, [n]g. 默认不配置。日志打印格式,开发环境默认 console, 生产环境默认 json. 可选项:
consolejsonlogfmtdelimiter参考:日志格式
使用缓存方式的唯一标识,指定服务端默认缓存方式,默认值 memory, 内置可选项:
memoryredis内存缓存项目最大个数,默认值 2000。
Redis连接,可选。示例:redis://localhost:6379
启动遥测数据收集,默认为 off.
启用的监控指标采集器,默认为 console. 其他值需要参考对应采集器插件注册的名字,如 prometheus. 多个使用 , 分隔。
启用的链路数据处理器,默认为 console. 其他值需要参考对应处理器插件注册的名字。多个使用 , 分隔。
用于附加预置的未激活插件,值为插件包名(package.json 的 name 参数),多个插件英文逗号分隔。
:::info
node_modules 目录里可以找到,更多内容查看 插件的组织方式。nocobase install 或升级 nocobase upgrade 后才会在插件管理器页面里显示。
:::用于附加内置并默认安装的插件,值为插件包名(package.json 的 name 参数),多个插件英文逗号分隔。
:::info
node_modules 目录里可以找到,更多内容查看 插件的组织方式。nocobase install 或升级 nocobase upgrade 时会自动安装或升级插件。
:::安装 NocoBase 时,可以通过设置临时的环境变量来辅助安装,如:
安装时的语言,默认值 en-US,可选项包括:
en-USzh-CNRoot 用户邮箱
Root 用户密码
Root 用户昵称