微语服务器配置参数说明
本文档详细说明微语服务器(基于Spring Boot 3.x开发)的配置参数及其用法。
若需了解如何为配置项加密、解密或注入密钥,请参阅 Jasypt 加密说明。
基础配置
| 参数名 | 说明 | 示例值 | Docker环境变量 |
|---|---|---|---|
server.port | 服务器端口 | 9003 | SERVER_PORT: 9003 |
bytedesk.debug | 是否开启调试模式 | true | BYTEDESK_DEBUG: true |
bytedesk.version | 产品版本号 | 1.6.0 | BYTEDESK_VERSION: 1.6.0 |
bytedesk.appkey | 授权密钥 | ZjoyMDI... | BYTEDESK_APPKEY: ZjoyMDI... |
自定义配置
| 参数名 | 说明 | 示例值 | Docker环境变量 |
|---|---|---|---|
bytedesk.custom.enabled | 是否启用自定义配置(名称、logo、说明等) | true | BYTEDESK_CUSTOM_ENABLED: true |
bytedesk.custom.name | 自定义产品名称,默认为空则使用默认名称 | - | BYTEDESK_CUSTOM_NAME: |
bytedesk.custom.logo | 自定义产品logo,默认为空则使用默认logo | - | BYTEDESK_CUSTOM_LOGO: |
bytedesk.custom.favicon | 自定义站点 favicon,默认为空则回退使用 bytedesk.custom.logo | - | BYTEDESK_CUSTOM_FAVICON: |
bytedesk.custom.description | 自定义产品描述,默认为空则使用"Chat As A Service" | - | BYTEDESK_CUSTOM_DESCRIPTION: |
bytedesk.custom.show-right-corner-chat | 是否显示右下角对话窗口 | false | BYTEDESK_CUSTOM_SHOW_RIGHT_CORNER_CHAT: false |
bytedesk.custom.right-corner-chat-placement | 浮窗位置:bottom-right/bottom-left | bottom-right | BYTEDESK_CUSTOM_RIGHT_CORNER_CHAT_PLACEMENT: bottom-right |
bytedesk.custom.show-demo | 是否显示默认演示 | true | BYTEDESK_CUSTOM_SHOW_DEMO: true |
bytedesk.custom.privacy-policy-url | 隐私政策URL地址 | - | BYTEDESK_CUSTOM_PRIVACY_POLICY_URL: |
bytedesk.custom.terms-of-service-url | 服务条款URL地址 | - | BYTEDESK_CUSTOM_TERMS_OF_SERVICE_URL: |
bytedesk.custom.upload-api-url | 外网可访问的上传 API 地址(完整URL,不带上传路径),用于多节点/反向代理上传场景 | https://upload.example.com | BYTEDESK_CUSTOM_UPLOAD_API_URL: https://upload.example.com |
bytedesk.custom.mqtt-websocket-url | 外网可访问的 MQTT WebSocket 地址(完整URL),用于 Nginx/反向代理场景,避免前端硬编码端口 | wss://api.example.com/websocket | BYTEDESK_CUSTOM_MQTT_WEBSOCKET_URL: wss://api.example.com/websocket |
bytedesk.custom.login-username-enable | 是否启用用户名登录 | true | BYTEDESK_CUSTOM_LOGIN_USERNAME_ENABLE: true |
bytedesk.custom.login-2fa-enable | 是否启用双重验证(用户名密码 + 手机号验证码) | false | BYTEDESK_CUSTOM_LOGIN_2FA_ENABLE: false |
bytedesk.custom.login-max-retry-count | 密码错误最大重试次数,0 表示不限制 | 3 | BYTEDESK_CUSTOM_LOGIN_MAX_RETRY_COUNT: 3 |
bytedesk.custom.login-max-retry-lock-time | 超过次数后的锁定时长(分钟),0 表示不锁定 | 10 | BYTEDESK_CUSTOM_LOGIN_MAX_RETRY_LOCK_TIME: 10 |
bytedesk.custom.login-mobile-enable | 是否启用手机号登录 | true | BYTEDESK_CUSTOM_LOGIN_MOBILE_ENABLE: true |
bytedesk.custom.login-scan-enable | 是否启用扫码登录 | true | BYTEDESK_CUSTOM_LOGIN_SCAN_ENABLE: true |
bytedesk.custom.login-wechat-enable | 是否启用微信登录 | false | BYTEDESK_CUSTOM_LOGIN_WECHAT_ENABLE: false |
bytedesk.custom.login-github-enable | 是否启用GitHub登录 | true | BYTEDESK_CUSTOM_LOGIN_GITHUB_ENABLE: true |
bytedesk.custom.login-facebook-enable | 是否启用Facebook登录 | false | BYTEDESK_CUSTOM_LOGIN_FACEBOOK_ENABLE: false |
bytedesk.custom.login-google-enable | 是否启用Google登录 | false | BYTEDESK_CUSTOM_LOGIN_GOOGLE_ENABLE: false |
bytedesk.custom.login-dingtalk-enable | 是否启用钉钉登录 | false | BYTEDESK_CUSTOM_LOGIN_DINGTALK_ENABLE: false |
bytedesk.custom.login-douyin-enable | 是否启用抖音登录 | false | BYTEDESK_CUSTOM_LOGIN_DOUYIN_ENABLE: false |
bytedesk.custom.login-feishu-enable | 是否启用飞书登录 | false | BYTEDESK_CUSTOM_LOGIN_FEISHU_ENABLE: false |
bytedesk.custom.login-ldap-enable | 是否启用LDAP登录 | false | BYTEDESK_CUSTOM_LOGIN_LDAP_ENABLE: false |
bytedesk.custom.login-cas-enable | 是否启用CAS登录 | false | BYTEDESK_CUSTOM_LOGIN_CAS_ENABLE: false |
bytedesk.custom.login-oidc-enable | 是否启用OIDC登录 | false | BYTEDESK_CUSTOM_LOGIN_OIDC_ENABLE: false |
bytedesk.custom.login-openid-enable | 是否启用OpenID登录 | false | BYTEDESK_CUSTOM_LOGIN_OPENID_ENABLE: false |
bytedesk.custom.doc-url-show | 是否显示文档链接 | true | BYTEDESK_CUSTOM_DOC_URL_SHOW: true |
bytedesk.custom.doc-url | 文档URL地址 | - | BYTEDESK_CUSTOM_DOC_URL: |
bytedesk.custom.lang | 登录页语言,zh-CN/en-US/zh-TW | zh-CN | BYTEDESK_CUSTOM_LANG: zh-CN |
bytedesk.custom.allow-register | 是否允许自助注册 | true | BYTEDESK_CUSTOM_ALLOW_REGISTER: true |
bytedesk.custom.auto-register-on-login | 手机号/邮箱登录时,若用户未注册,是否自动创建账号 | true | BYTEDESK_CUSTOM_AUTO_REGISTER_ON_LOGIN: true |
bytedesk.custom.force-validate-mobile | 是否强制验证手机号 | true | BYTEDESK_CUSTOM_FORCE_VALIDATE_MOBILE: true |
bytedesk.custom.force-validate-email | 是否强制验证邮箱 | true | BYTEDESK_CUSTOM_FORCE_VALIDATE_EMAIL: true |
bytedesk.custom.force-visitor-auth | 是否强制访客身份认证 | false | BYTEDESK_CUSTOM_FORCE_VISITOR_AUTH: false |
品牌自定义配置示例(关键)
首先需要启用
bytedesk.custom.enabled=true,然后再修改name品牌名、logo、favicon、description等信息;否则上述自定义配置不会生效。
# enable custom config: name, logo, description
bytedesk.custom.enabled=true
# default null use default name
bytedesk.custom.name=
# default null use default logo
bytedesk.custom.logo=
# default null use logo config as favicon
bytedesk.custom.favicon=
# default null use: Chat As A Service
bytedesk.custom.description=
# privacy policy url
bytedesk.custom.privacy-policy-url=https://www.weiyuai.cn/pages/privacy.html
# terms of service url
bytedesk.custom.terms-of-service-url=https://www.weiyuai.cn/pages/terms.html
OAuth 与第三方登录配置
启用第三方登录时,需要同时打开对应的
bytedesk.custom.login-xxx-enable开关,确保前端展示入口。
GitHub 登录
| 参数名 | 说明 | 示例值 | Docker环境变量 |
|---|---|---|---|
bytedesk.oauth.github.enabled | 是否启用GitHub登录 | true | BYTEDESK_OAUTH_GITHUB_ENABLED: true |
bytedesk.oauth.github.client-id | GitHub OAuth应用的Client ID | Ov23lilbd9l79m8dQdUG | BYTEDESK_OAUTH_GITHUB_CLIENT_ID: Ov23lilbd9l79m8dQdUG |
bytedesk.oauth.github.client-secret | GitHub OAuth应用的Client Secret | your-github-client-secret | BYTEDESK_OAUTH_GITHUB_CLIENT_SECRET: your-github-client-secret |
bytedesk.oauth.github.redirect-uri | GitHub授权完成后的回调地址 | http://127.0.0.1:9004/admin/auth/login | BYTEDESK_OAUTH_GITHUB_REDIRECT_URI: http://127.0.0.1:9004/admin/auth/login |
Google 登录
| 参数名 | 说明 | 示例值 | Docker环境变量 |
|---|---|---|---|
bytedesk.oauth.google.enabled | 是否启用Google登录 | true | BYTEDESK_OAUTH_GOOGLE_ENABLED: true |
bytedesk.oauth.google.client-id | Google OAuth客户端ID | your-google-client-id | BYTEDESK_OAUTH_GOOGLE_CLIENT_ID: your-google-client-id |
bytedesk.oauth.google.client-secret | Google OAuth客户端密钥 | your-google-client-secret | BYTEDESK_OAUTH_GOOGLE_CLIENT_SECRET: your-google-client-secret |
bytedesk.oauth.google.redirect-uri | Google授权回调地址 | https://example.com/oauth/google/callback | BYTEDESK_OAUTH_GOOGLE_REDIRECT_URI: https://example.com/oauth/google/callback |
微信登录
| 参数名 | 说明 | 示例值 | Docker环境变量 |
|---|---|---|---|
bytedesk.oauth.wechat.enabled | 是否启用微信登录(开放平台/公众号网页授权) | true | BYTEDESK_OAUTH_WECHAT_ENABLED: true |
bytedesk.oauth.wechat.app-id | 微信开放平台应用AppID | your-wechat-app-id | BYTEDESK_OAUTH_WECHAT_APP_ID: your-wechat-app-id |
bytedesk.oauth.wechat.app-secret | 微信开放平台应用Secret | your-wechat-app-secret | BYTEDESK_OAUTH_WECHAT_APP_SECRET: your-wechat-app-secret |
bytedesk.oauth.wechat.redirect-uri | 微信授权回调地址 | https://example.com/oauth/wechat/callback | BYTEDESK_OAUTH_WECHAT_REDIRECT_URI: https://example.com/oauth/wechat/callback |
Facebook 登录
| 参数名 | 说明 | 示例值 | Docker环境变量 |
|---|---|---|---|
bytedesk.oauth.facebook.enabled | 是否启用Facebook登录 | true | BYTEDESK_OAUTH_FACEBOOK_ENABLED: true |
bytedesk.oauth.facebook.client-id | Facebook应用ID | your-facebook-client-id | BYTEDESK_OAUTH_FACEBOOK_CLIENT_ID: your-facebook-client-id |
bytedesk.oauth.facebook.client-secret | Facebook应用密钥 | your-facebook-client-secret | BYTEDESK_OAUTH_FACEBOOK_CLIENT_SECRET: your-facebook-client-secret |
bytedesk.oauth.facebook.redirect-uri | Facebook授权回调地址 | https://example.com/oauth/facebook/callback | BYTEDESK_OAUTH_FACEBOOK_REDIRECT_URI: https://example.com/oauth/facebook/callback |
钉钉登录
| 参数名 | 说明 | 示例值 | Docker环境变量 |
|---|---|---|---|
bytedesk.oauth.dingtalk.enabled | 是否启用钉钉登录 | true | BYTEDESK_OAUTH_DINGTALK_ENABLED: true |
bytedesk.oauth.dingtalk.app-id | 钉钉应用AppKey/AppID | your-dingtalk-app-id | BYTEDESK_OAUTH_DINGTALK_APP_ID: your-dingtalk-app-id |
bytedesk.oauth.dingtalk.app-secret | 钉钉应用AppSecret | your-dingtalk-app-secret | BYTEDESK_OAUTH_DINGTALK_APP_SECRET: your-dingtalk-app-secret |
bytedesk.oauth.dingtalk.redirect-uri | 钉钉授权回调地址 | https://example.com/oauth/dingtalk/callback | BYTEDESK_OAUTH_DINGTALK_REDIRECT_URI: https://example.com/oauth/dingtalk/callback |
抖音登录
| 参数名 | 说明 | 示例值 | Docker环境变量 |
|---|---|---|---|
bytedesk.oauth.douyin.enabled | 是否启用抖音登录 | true | BYTEDESK_OAUTH_DOUYIN_ENABLED: true |
bytedesk.oauth.douyin.client-key | 抖音开放平台Client Key | your-douyin-client-key | BYTEDESK_OAUTH_DOUYIN_CLIENT_KEY: your-douyin-client-key |
bytedesk.oauth.douyin.client-secret | 抖音开放平台Client Secret | your-douyin-client-secret | BYTEDESK_OAUTH_DOUYIN_CLIENT_SECRET: your-douyin-client-secret |
bytedesk.oauth.douyin.redirect-uri | 抖音授权回调地址 | https://example.com/oauth/douyin/callback | BYTEDESK_OAUTH_DOUYIN_REDIRECT_URI: https://example.com/oauth/douyin/callback |
飞书登录
| 参数名 | 说明 | 示例值 | Docker环境变量 |
|---|---|---|---|
bytedesk.oauth.feishu.enabled | 是否启用飞书登录 | true | BYTEDESK_OAUTH_FEISHU_ENABLED: true |
bytedesk.oauth.feishu.app-id | 飞书应用AppID | your-feishu-app-id | BYTEDESK_OAUTH_FEISHU_APP_ID: your-feishu-app-id |
bytedesk.oauth.feishu.app-secret | 飞书应用AppSecret | your-feishu-app-secret | BYTEDESK_OAUTH_FEISHU_APP_SECRET: your-feishu-app-secret |
bytedesk.oauth.feishu.redirect-uri | 飞书授权回调地址 | https://example.com/oauth/feishu/callback | BYTEDESK_OAUTH_FEISHU_REDIRECT_URI: https://example.com/oauth/feishu/callback |
LDAP 模式
| 参数名 | 说明 | 示例值 | Docker环境变量 |
|---|---|---|---|
bytedesk.oauth.ldap.enabled | 是否启用内置LDAP登录适配 | false | BYTEDESK_OAUTH_LDAP_ENABLED: false |
bytedesk.oauth.ldap.default-email-domain | 登录时若无邮箱按该域名拼接 | yourdomain.com | BYTEDESK_OAUTH_LDAP_DEFAULT_EMAIL_DOMAIN: yourdomain.com |
CAS 单点登录
| 参数名 | 说明 | 示例值 | Docker环境变量 |
|---|---|---|---|
bytedesk.oauth.cas.enabled | 是否启用CAS | false | BYTEDESK_OAUTH_CAS_ENABLED: false |
bytedesk.oauth.cas.server-url | CAS服务器地址 | https://cas.example.com | BYTEDESK_OAUTH_CAS_SERVER_URL: https://cas.example.com |
bytedesk.oauth.cas.login-path | CAS登录路径 | /login | BYTEDESK_OAUTH_CAS_LOGIN_PATH: /login |
bytedesk.oauth.cas.validate-path | CAS校验路径,建议使用p3接口 | /p3/serviceValidate | BYTEDESK_OAUTH_CAS_VALIDATE_PATH: /p3/serviceValidate |
bytedesk.oauth.cas.service-redirect-uri | 当前系统在CAS注册的回调地址 | https://example.com/oauth/cas/callback | BYTEDESK_OAUTH_CAS_SERVICE_REDIRECT_URI: https://example.com/oauth/cas/callback |
bytedesk.oauth.cas.default-email-domain | 当CAS响应中无邮箱时用于拼接的域名 | example.com | BYTEDESK_OAUTH_CAS_DEFAULT_EMAIL_DOMAIN: example.com |
OIDC 标准登录
| 参数名 | 说明 | 示例值 | Docker环境变量 |
|---|---|---|---|
bytedesk.oauth.oidc.enabled | 是否启用OIDC登录 | false | BYTEDESK_OAUTH_OIDC_ENABLED: false |
bytedesk.oauth.oidc.issuer | Issuer地址 | https://login.microsoftonline.com/{tenant}/v2.0 | BYTEDESK_OAUTH_OIDC_ISSUER: https://login.microsoftonline.com/{tenant}/v2.0 |
bytedesk.oauth.oidc.client-id | OIDC客户端ID | your-oidc-client-id | BYTEDESK_OAUTH_OIDC_CLIENT_ID: your-oidc-client-id |
bytedesk.oauth.oidc.client-secret | OIDC客户端密钥 | your-oidc-client-secret | BYTEDESK_OAUTH_OIDC_CLIENT_SECRET: your-oidc-client-secret |
bytedesk.oauth.oidc.redirect-uri | OIDC授权回调地址 | https://example.com/oauth/oidc/callback | BYTEDESK_OAUTH_OIDC_REDIRECT_URI: https://example.com/oauth/oidc/callback |
OpenID 自定义模式
| 参数名 | 说明 | 示例值 | Docker环境变量 |
|---|---|---|---|
bytedesk.oauth.openid.enabled | 是否启用OpenID通用模式 | false | BYTEDESK_OAUTH_OPENID_ENABLED: false |
bytedesk.oauth.openid.authorization-endpoint | 授权端点 | https://example.com/oauth2/authorize | BYTEDESK_OAUTH_OPENID_AUTHORIZATION_ENDPOINT: https://example.com/oauth2/authorize |
bytedesk.oauth.openid.token-endpoint | Token端点 | https://example.com/oauth2/token | BYTEDESK_OAUTH_OPENID_TOKEN_ENDPOINT: https://example.com/oauth2/token |
bytedesk.oauth.openid.user-info-endpoint | 用户信息端点 | https://example.com/oauth2/userinfo | BYTEDESK_OAUTH_OPENID_USER_INFO_ENDPOINT: https://example.com/oauth2/userinfo |
bytedesk.oauth.openid.client-id | OpenID客户端ID | your-openid-client-id | BYTEDESK_OAUTH_OPENID_CLIENT_ID: your-openid-client-id |
bytedesk.oauth.openid.client-secret | OpenID客户端密钥 | your-openid-client-secret | BYTEDESK_OAUTH_OPENID_CLIENT_SECRET: your-openid-client-secret |
bytedesk.oauth.openid.redirect-uri | OpenID授权回调地址 | https://example.com/oauth/openid/callback | BYTEDESK_OAUTH_OPENID_REDIRECT_URI: https://example.com/oauth/openid/callback |
bytedesk.oauth.openid.username-field | 作为用户名的字段,默认email | email | BYTEDESK_OAUTH_OPENID_USERNAME_FIELD: email |
管理员配置
| 参数名 | 说明 | 示例值 | Docker环境变量 |
|---|---|---|---|
bytedesk.admin.email | 管理员邮箱 | admin@email.com | BYTEDESK_ADMIN_EMAIL: admin@email.com |
bytedesk.admin.password | 管理员默认密码 | admin | BYTEDESK_ADMIN_PASSWORD: admin |
bytedesk.admin.nickname | 管理员昵称 | SuperAdmin | BYTEDESK_ADMIN_NICKNAME: SuperAdmin |
bytedesk.admin.mobile | 管理员手机号 | 13345678000 | BYTEDESK_ADMIN_MOBILE: 13345678000 |
bytedesk.admin.mobile-whitelist | 手机号白名单,使用逗号分隔 | 18888888000,18888888001,... | BYTEDESK_ADMIN_MOBILE_WHITELIST: 18888888000,18888888001... |
bytedesk.admin.email-whitelist | 邮箱白名单,使用逗号分隔 | 100@email.com,101@email.com,... | BYTEDESK_ADMIN_EMAIL_WHITELIST: 100@email.com,101@email.com... |
bytedesk.admin.validate-code | 白名单手机号和邮箱的验证码,否则生成随机6位数字 | 123456 | BYTEDESK_ADMIN_VALIDATE_CODE: 123456 |
成员配置
| 参数名 | 说明 | 示例值 | Docker环境变量 |
|---|---|---|---|
bytedesk.member.password | 创建/导入成员的默认密码 | 123456 | BYTEDESK_MEMBER_PASSWORD: 123456 |
性能测试配置
| 参数名 | 说明 | 示例值 | Docker环境变量 |
|---|---|---|---|
bytedesk.testing.enabled | 是否启用性能测试模式 | false | BYTEDESK_TESTING_ENABLED: false |
bytedesk.testing.account-count | 测试账号数量 | 300 | BYTEDESK_TESTING_ACCOUNT_COUNT: 300 |
bytedesk.testing.account-username | 测试账号用户名前缀 | test | BYTEDESK_TESTING_ACCOUNT_USERNAME: test |
bytedesk.testing.account-password | 测试账号密码 | password | BYTEDESK_TESTING_ACCOUNT_PASSWORD: password |
bytedesk.testing.disable-captcha | 是否禁用验证码 | true | BYTEDESK_TESTING_DISABLE_CAPTCHA: true |
bytedesk.testing.disable-ip-filter | 是否禁用IP过滤 | true | BYTEDESK_TESTING_DISABLE_IP_FILTER: true |
IP 归属地配置
系统支持两种 IP 归属地数据库实现:ip2region 和 maxmind。可通过配置切换默认 provider,也可以在默认 provider 不可用时自动回退到另一种实现。
| 参数名 | 说明 | 示例值 | Docker环境变量 |
|---|---|---|---|
bytedesk.ip.provider | 默认 IP 归属地 provider,可选:ip2region / maxmind | ip2region | BYTEDESK_IP_PROVIDER: ip2region |
bytedesk.ip.fallback-enabled | 当默认 provider 不可用时,是否自动回退到其他可用 provider | true | BYTEDESK_IP_FALLBACK_ENABLED: true |
bytedesk.ip.ip2region.db-file | ip2region 数据库文件的 classpath 路径 | ipdb/ip2region.xdb | BYTEDESK_IP_IP2REGION_DB_FILE: ipdb/ip2region.xdb |
bytedesk.ip.maxmind.city-db-file | MaxMind City 数据库文件的 classpath 路径 | ipdb/GeoLite2-City.mmdb | BYTEDESK_IP_MAXMIND_CITY_DB_FILE: ipdb/GeoLite2-City.mmdb |
bytedesk.ip.maxmind.locales | MaxMind 地名语言优先级,多个值使用逗号分隔 | zh-CN,en | BYTEDESK_IP_MAXMIND_LOCALES: zh-CN,en |
Provider 切换说明
bytedesk.ip.provider=ip2region:默认使用ip2region查询。bytedesk.ip.provider=maxmind:默认使用 MaxMind 查询。bytedesk.ip.fallback-enabled=true:若默认 provider 初始化失败、数据库文件缺失或当 前 provider 不可用,系统会自动尝试其他可用 provider。bytedesk.ip.fallback-enabled=false:只使用当前指定 provider,不自动切换。
数据库文件放置说明
- 建议将数据库文件统一放在
starter/src/main/resources/ipdb/目录下。 - 当前默认文件名约定如下:
starter/src/main/resources/ipdb/ip2region.xdbstarter/src/main/resources/ipdb/GeoLite2-City.mmdb
- 配置项填写的是 classpath 相对路径,而不是操作系统绝对路径。
- 如果你改了文件名或目录,需要同步修改
bytedesk.ip.ip2region.db-file和bytedesk.ip.maxmind.city-db-file。
配置示例
# 默认使用 ip2region
bytedesk.ip.provider=ip2region
# 当 ip2region 不可用时,自动回退到 MaxMind
bytedesk.ip.fallback-enabled=true
# ip2region 数据库文件
bytedesk.ip.ip2region.db-file=ipdb/ip2region.xdb
# MaxMind City 数据库文件
bytedesk.ip.maxmind.city-db-file=ipdb/GeoLite2-City.mmdb
# MaxMind 地名语言优先级
bytedesk.ip.maxmind.locales=zh-CN,en
Docker 环境变量示例
BYTEDESK_IP_PROVIDER: ip2region
BYTEDESK_IP_FALLBACK_ENABLED: "true"
BYTEDESK_IP_IP2REGION_DB_FILE: ipdb/ip2region.xdb
BYTEDESK_IP_MAXMIND_CITY_DB_FILE: ipdb/GeoLite2-City.mmdb
BYTEDESK_IP_MAXMIND_LOCALES: zh-CN,en
使用建议
- 国内部署优先可使用
ip2region作为默认 provider,查询速度和部署便利性更好。 - 需要更完整海外地理信息时,可切换为
maxmind,或开启 fallback 作为补充。 - 若使用 MaxMind,请确保
.mmdb文件已下载并放入 resources 对应路径,否则启动后查询会自动回退或返回不可用。
组织配置
| 参数名 | 说明 | 示例值 | Docker环境变量 |
|---|---|---|---|
bytedesk.organization.name | 组织名称 | MyCompany | BYTEDESK_ORGANIZATION_NAME: MyCompany |
bytedesk.organization.code | 组织代码 | bytedesk | BYTEDESK_ORGANIZATION_CODE: bytedesk |
功能特性配置
| 参数名 | 说明 | 示例值 | Docker环境变量 |
|---|---|---|---|
bytedesk.features.java-ai | 是否启用Java AI功能 | true | BYTEDESK_FEATURES_JAVA_AI: false |
bytedesk.features.python-ai | 是否启用Python AI功能 | false | BYTEDESK_FEATURES_PYTHON_AI: true |
bytedesk.features.email-type | 邮件发送方式,可选:javamail/aliyun | javamail | BYTEDESK_FEATURES_EMAIL_TYPE: javamail |
bytedesk.features.avatar-base-url | 头像基础URL | - | BYTEDESK_FEATURES_AVATAR_BASE_URL: |
跨域配置
| 参数名 | 说明 | 示例值 | Docker环境变量 |
|---|---|---|---|
bytedesk.cors.allowed-origins | 允许的跨域来源 | * | BYTEDESK_CORS_ALLOWED_ORIGINS: * |
JWT配置
| 参数名 | 说明 | 示例值 | Docker环境变量 |
|---|---|---|---|
bytedesk.jwt.secret-key | JWT密钥 | 1dfaf8d004207b628a9a6b859c429f49a9a7ead9fd8161c1e60847aeef06dbd2 | BYTEDESK_JWT_SECRET_KEY: 1dfaf8d004207b628a9a6b859c429f49a9a7ead9fd8161c1e60847aeef06dbd2 |
bytedesk.jwt.expiration | JWT过期时间(毫秒),默认30天 | 2592000000 | BYTEDESK_JWT_EXPIRATION: 2592000000 |
bytedesk.jwt.refresh-token-expiration | 刷新令牌过期时间(毫秒),默认60天 | 5184000000 | BYTEDESK_JWT_REFRESH_TOKEN_EXPIRATION: 5184000000 |
缓存配置
| 参数名 | 说明 | 示例值 | Docker环境变量 |
|---|---|---|---|
bytedesk.cache.level | 缓存级别:0(不使用缓存)、1(使用Caffeine缓存)、2(使用Caffeine + Redis缓存) | 2 | BYTEDESK_CACHE_LEVEL: 2 |
bytedesk.cache.prefix | 缓存前缀 | bytedeskim | BYTEDESK_CACHE_PREFIX: bytedeskim |
bytedesk.cache.redis-stream-key | Redis流键名 | bytedeskim:stream | BYTEDESK_CACHE_REDIS_STREAM_KEY: bytedeskim:stream |
spring.cache.type | Spring Cache 类型(建议:redis) | redis | SPRING_CACHE_TYPE: redis |
spring.cache.redis.time-to-live | Spring Cache Redis TTL(毫秒) | 1800000 | SPRING_CACHE_REDIS_TIME_TO_LIVE: 1800000 |
spring.cache.redis.cache-null-values | 是否缓存 null 值 | false | SPRING_CACHE_REDIS_CACHE_NULL_VALUES: "false" |
spring.cache.redis.use-key-prefix | 是否启用 key 前缀 | true | SPRING_CACHE_REDIS_USE_KEY_PREFIX: "true" |
spring.cache.redis.key-prefix | key 前缀 | bytedeskim:cache: | SPRING_CACHE_REDIS_KEY_PREFIX: "bytedeskim:cache:" |
上传配置
| 参数名 | 说明 | 示例值 | Docker环境变量 |
|---|---|---|---|
bytedesk.upload.type | 上传类型 | local | BYTEDESK_UPLOAD_TYPE: local |
bytedesk.upload.dir | 上传目录(请首先在服务器创建文件夹,路径末尾不能添加'/') | /var/www/html/weiyuai/file | BYTEDESK_UPLOAD_DIR: /var/www/html/weiyuai/file |
bytedesk.upload.url | 外部访问上传文件URL(需要将域名替换为自己域名) | https://www.weiyuai.cn | BYTEDESK_UPLOAD_URL: https://www.weiyuai.cn |
上传配置URL组成说明
完整的上传文件URL实例:https://www.weiyuai.cn/file/2025/05/21/20250521112410_pigeon_blue.png
其中:
https://www.weiyuai.cn对应bytedesk.upload.url配置值/file对应bytedesk.upload.dir配置的最后一级目录名/2025/05/21/20250521112410_pigeon_blue.png为系统自动生成的文件存储路径和文件名