-
Notifications
You must be signed in to change notification settings - Fork 10
Configuration
李源炳 edited this page Jun 19, 2026
·
1 revision
IMBoy 采用三层配置体系,优先级从高到低:
IMBOY_* 环境变量 > sys.runtime.config > sys.config / sys.local.config
所有 IMBOY_* 前缀的环境变量在运行时具有最高优先级。
| 变量 | 默认值 | 说明 |
|---|---|---|
IMBOYENV |
prod |
运行环境:local / dev / prod
|
IMBOY_DOMAIN |
— | 绑定域名,License 验证使用 |
HTTP_PORT |
8080 |
HTTP/WebSocket 监听端口 |
IMBOY_JWT_SECRET |
— | JWT 签名密钥(必填,32位以上) |
IMBOY_JWT_EXPIRE |
86400 |
JWT 过期时间(秒) |
| 变量 | 默认值 | 说明 |
|---|---|---|
IMBOY_DB_HOST |
localhost |
PostgreSQL 主机 |
IMBOY_DB_PORT |
5432 |
PostgreSQL 端口 |
IMBOY_DB_NAME |
imboy |
数据库名 |
IMBOY_DB_USER |
imboy |
数据库用户 |
IMBOY_DB_PASS |
— | 数据库密码(必填) |
IMBOY_DB_POOL |
10 |
连接池大小 |
| 变量 | 默认值 | 说明 |
|---|---|---|
S3_ENDPOINT |
— | S3 端点 URL |
S3_ACCESS_KEY |
— | Access Key |
S3_SECRET_KEY |
— | Secret Key |
S3_BUCKET |
imboy |
默认存储桶 |
S3_REGION |
us-east-1 |
区域(Garage 可任意填写) |
| 变量 | 默认值 | 说明 |
|---|---|---|
FCM_SERVER_KEY |
— | Firebase 推送(Android) |
APNS_CERT_PATH |
— | APNs 证书路径(iOS) |
APNS_CERT_PASS |
— | APNs 证书密码 |
| 变量 | 默认值 | 说明 |
|---|---|---|
WECHAT_PAY_MCHID |
— | 微信支付商户号 |
WECHAT_PAY_APP_ID |
— | 微信 AppID |
WECHAT_API_V3_KEY |
— | API v3 密钥 |
WECHAT_CERT_PATH |
— | 商户证书路径 |
ALIPAY_APP_ID |
— | 支付宝应用 ID |
ALIPAY_PRIVATE_KEY |
— | 支付宝私钥 |
| 变量 | 默认值 | 说明 |
|---|---|---|
IMBOY_LICENSE_FILE |
— | License 文件路径 |
IMBOY_LICENSE_PUBKEY |
— | RSA 公钥路径(验签用) |
本地开发使用 config/sys.local.config,生产使用 config/sys.config。
{imboy, [
%% 运行环境
{env, prod},
%% E2EE 加密模式:disabled | optional | required
{e2ee_mode, optional},
%% 消息永久归档(开启后消息写入 TimescaleDB)
{msg_archive_enabled, false},
%% 最大 WebSocket 连接数(0 = 不限)
{max_ws_connections, 0},
%% 离线消息保留天数
{offline_msg_ttl_days, 30},
%% 文件上传大小限制(字节)
{upload_max_size, 104857600}, %% 100 MB
%% 速率限制(每分钟每用户最大消息数)
{rate_limit_msg_per_min, 600}
]}在运行中的节点执行(无需重启):
%% 进入远程控制台
_rel/imboy/bin/imboy remote_console
%% 重新加载配置
config_ds:local_reload().
%% 查看当前 E2EE 模式
application:get_env(imboy, e2ee_mode).参见仓库 deploy/.env.example,已包含所有可选项及注释说明。