跳轉至

部署和維護 / 配置文件

本文主要介紹 DataFlux Func 的配置文件以及調整方式。

1. 配置文件位置

請參考 部署和維護 / 配置和數據文件 / DataFlux Func 配置

2. 配置項

下方未列出的配置項請勿隨意修改

DataFlux Func 具有非常多的可配置項

以下僅列出一些常用的,用户可以直接修改的配置項

其他未列出的配置項請勿隨意修改

修改配置後需要重啓

在修改配置後,需要重啓整個 DataFlux Func 才能使新配置生效

請勿單獨啓動部分服務,避免服務之間因配置不同而導致衝突

配置項 默認值 版本要求 説明
SECRET 部署時隨機生成 私鑰。用於登錄令牌、連接器配置加密等
注意:一旦配置後請勿修改,否則會導致系統無法正常運行
LOG_LEVEL "WARNING" 日誌等級,可選:
 "ALL": 全部輸出
 "DEBUG": 輸出調試、信息、警告和錯誤日誌
 "INFO": 輸出信息、警告和錯誤日誌
 "WARNING": 輸出警告和錯誤日誌
 "ERROR": 僅輸出錯誤日誌
 "NONE": 不輸出
LOG_FILE_PATH "data/logs/dataflux-func.log" 日誌文件輸出地址
必須使用絕對路徑
TIMEZONE "Asia/Shanghai" 時區
LOG_FILE_FORMAT "text" 日誌輸出格式,可選:
 "text": 純文本格式
 "json": JSON 格式
LOG_CONSOLE_COLOR false 終端日誌是否着色
WEB_BASE_URL "" Web 服務訪問 URL
即用户在訪問時,瀏覽器地址欄中需要輸入的地址
留空表示跟隨瀏覽器
WEB_BIND "0.0.0.0" Web 服務綁定 IP,如:
 "0.0.0.0": 為公開訪問
 "127.0.0.1": 為僅本地訪問
WEB_PORT 8088 Web 服務綁定端口
WEB_FIXED_RESPONSE_HEADERS_MAP null 6.3.0 Web 服務固定響應頭
配置細節
WEB_CORS_ORIGIN_LIST 配置細節 6.3.0 Web 服務跨域 Origin 列表
配置細節
MYSQL_HOST 部署時自動填入 MySQL 主機地址
MYSQL_PORT 3306 MySQL 端口
MYSQL_USER "root" MySQL 用户
MYSQL_PASSWORD 部署時隨機生成 MySQL 密碼
MYSQL_DATABASE "dataflux_func" MySQL 數據庫
REDIS_HOST 部署時自動填入 Redis 主機地址
REDIS_PORT 6379 Redis 端口
REDIS_DATABASE 5 Redis 數據庫
REDIS_USER "" Redis 用户
REDIS_PASSWORD 部署時隨機生成 Redis 密碼
REDIS_USE_TLS false 1.1.9 Redis 是否開啓 TLS
REDIS_AUTH_TYPE "default" 2.8.1 Redis 認證方式,可選:
 "default": 默認(即 Redis 原版)
 "aliyun":阿里雲數據庫認證
REDIS_MODE "auto" 6.2.12 Redis 模式,可選:
 "auto":自動判斷
 "singleton":單機版
 "cluster":集羣版
BAD_SIGNIN_TEMP_LOCK_ACTIVE_COUNT 10 因登錄失敗而啓用臨時鎖定用户的次數

3. 配置細節

部分配置項目的細節如下:

WEB_FIXED_RESPONSE_HEADERS_MAP

此配置項為字典結構

Web 服務固定響應頭

配置後,DataFlux Func 所有 HTTP 響應頭都會包含指定的內容

示例
1
2
WEB_FIXED_RESPONSE_HEADERS_MAP:
  X-Content-Type-Options: nosniff

WEB_CORS_ORIGIN_LIST

此配置項為列表結構

Web 服務跨域 Origin 列表

列表每一項均為一條規則,Web 服務在接到請求後會依次匹配,按照第一個命中的規則進行處理

可用規則及其寫法如下:

規則 示例 説明
任意 "*" 總是能命中的規則,可寫在最後一條作為默認規則
Origin 匹配 "http://non.func.domain" 針對特定來源 Origin 進行控制
URL 匹配 "http://non.func.domain/api/v1"
"http://non.func.domain/api/*"
"http://non.func.domain/api/v*"
"http://non.func.domain/api/**"
針對特定來源 Origin,並只針對請求特定路徑時進行控制
路徑支持 * 通配
Path 匹配 "/api/v1"
"/api/*"
"/api/v*"
"/api/**"
只針對請求特定路徑時進行 CORS 控制
路徑支持 * 通配
Host 匹配 "non.func.domain" 只針對來源 Origin 中 Host 部分匹配時進行控制
即忽略 HTTP 協議類型
Host + Path 匹配 "non.func.domain/api/v1"
"non.func.domain/api/*"
"non.func.domain/api/v*"
"non.func.domain/api/**"
只針對來源 Origin 中 Host 部分匹配,並只針對請求特定路徑時進行控制
路徑支持 * 通配

默認命中後為允許跨域,規則開頭添加 "!" 表示命中後不允許跨域,如果沒有命中的,則默認為禁止跨域,如:

允許 /api/v1/func-api/** 跨域,其他不允許跨域
1
2
3
WEB_CORS_ORIGIN_LIST:
  - '/api/v1/func-api/**'
  - '!*

當前默認配置如下:

默認值
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
WEB_CORS_ORIGIN_LIST:
  - '/api/v1/func-api/**'              # 函數 API 接口
  - '/api/v1/cron/*'                   # 手動觸發定時任務接口
  - '/api/v1/func-api-list'            # 函數 API 列表接口
  - '/api/v1/func/integration/sign-in' # 集成登錄接口
  - '/api/v1/fs/**'                    # 文件服務接口
  - '/api/v1/sync/**'                  # 同步 API 接口(舊版)
  - '/api/v1/async/**'                 # 異步 API 接口(舊版)
  - '/api/v1/al/**'                    # 授權鏈接接口(舊版)
  - '/api/v1/bat/**'                   # 批處理接口(舊版)