Files
weiyu/deploy/server/config/application.properties

1166 lines
44 KiB
Properties
Raw Normal View History

2024-08-09 11:06:35 +08:00
# ===============================
2024-09-11 19:24:23 +08:00
#=bytedesk
2024-08-09 11:06:35 +08:00
# ===============================
bytedesk.debug=true
2025-10-14 16:46:38 +08:00
bytedesk.version=0.9.8
2025-07-30 14:48:43 +08:00
# 申请实际的license
# https://www.weiyuai.cn/docs/zh-CN/docs/faq#%E9%97%AE%E9%A2%9813%E5%A6%82%E4%BD%95%E8%8E%B7%E5%8F%96%E8%AF%95%E7%94%A8%E7%89%88license
bytedesk.licenseKey=
2025-03-02 23:18:40 +08:00
# enable custom config: name, logo, description
bytedesk.custom.enabled=false
2025-02-15 08:54:10 +08:00
# default null use default name
2025-03-02 23:18:40 +08:00
bytedesk.custom.name=
2025-02-15 08:54:10 +08:00
# default null use default logo
2025-03-02 23:18:40 +08:00
bytedesk.custom.logo=
2025-02-15 08:54:10 +08:00
# default null use: Chat As A Service
2025-03-02 23:18:40 +08:00
bytedesk.custom.description=
# show right corner chat
2025-07-30 14:48:43 +08:00
bytedesk.custom.show-right-corner-chat=false
2025-07-18 17:45:50 +08:00
# show demo
bytedesk.custom.show-demo=false
2025-03-26 22:14:23 +08:00
# privacy policy url
2025-07-18 17:45:50 +08:00
bytedesk.custom.privacy-policy-url=https://www.weiyuai.cn/privacy.html
2025-03-26 22:14:23 +08:00
# terms of service url
2025-07-18 17:45:50 +08:00
bytedesk.custom.terms-of-service-url=https://www.weiyuai.cn/terms.html
2025-03-26 22:14:23 +08:00
# enable login username
bytedesk.custom.login-username-enable=true
2025-10-14 16:46:38 +08:00
# 密码错误最大重试次数, 默认3次, 0表示不限制。
bytedesk.custom.login-max-retry-count=3
# 超过次数默认锁定10分钟, 0表示不锁定
bytedesk.custom.login-max-retry-lock-time=10
2025-03-26 22:14:23 +08:00
# enable login mobile
bytedesk.custom.login-mobile-enable=true
# enable login email
2025-07-18 17:45:50 +08:00
# bytedesk.custom.login-email-enable=false
2025-03-26 22:14:23 +08:00
# enable login scan
bytedesk.custom.login-scan-enable=true
2025-10-14 16:46:38 +08:00
# enable wechat login
bytedesk.custom.login-wechat-enable=false
# enable github login
bytedesk.custom.login-github-enable=false
# enable facebook login
bytedesk.custom.login-facebook-enable=false
# enable google login
bytedesk.custom.login-google-enable=false
# enable dingtalk login
bytedesk.custom.login-dingtalk-enable=false
# enable douyin login
bytedesk.custom.login-douyin-enable=false
# enable feishu login
bytedesk.custom.login-feishu-enable=false
# enable ldap login
bytedesk.custom.login-ldap-enable=false
# enable cas login
bytedesk.custom.login-cas-enable=false
# enable oidc login
bytedesk.custom.login-oidc-enable=false
# enable openid login
bytedesk.custom.login-openid-enable=false
2025-03-26 22:14:23 +08:00
# show doc url
bytedesk.custom.doc-url-show=true
# doc url
bytedesk.custom.doc-url=https://www.weiyuai.cn/docs/zh-CN/
2025-07-18 17:45:50 +08:00
# lang: zh-CN/en-US/zh-TW
bytedesk.custom.lang=zh-CN
2025-10-14 16:46:38 +08:00
# allow register
bytedesk.custom.allow-register=false
# force validate mobile
bytedesk.custom.force-validate-mobile=true
# force validate email
bytedesk.custom.force-validate-email=true
# force visitor auth
bytedesk.custom.force-visitor-auth=false
2025-01-15 16:14:14 +08:00
2025-06-21 11:57:41 +08:00
# ===============================
2025-01-15 16:14:14 +08:00
# Admin config
2025-06-21 11:57:41 +08:00
# ===============================
2025-01-15 16:14:14 +08:00
# admin email
bytedesk.admin.email=admin@email.com
# admin password
bytedesk.admin.password=admin
# admin nickname
bytedesk.admin.nickname=SuperAdmin
# admin mobile
bytedesk.admin.mobile=13345678000
# white list mobile
bytedesk.admin.mobile-whitelist=18888888000,18888888001,18888888002,18888888003,18888888004,18888888005
# white list email
bytedesk.admin.email-whitelist=100@email.com,101@email.com,102@email.com,103@email.com,104@email.com,105@email.com
# validate code for white list mobile and email, otherwise random 6 digits
bytedesk.admin.validate-code=123456
2025-06-21 11:57:41 +08:00
# ===============================
#= Member config
# ===============================
# create/import member default password
bytedesk.member.password=123456
2025-07-30 14:48:43 +08:00
# ===============================
2025-10-14 16:46:38 +08:00
#= Performance Testing config
2025-07-30 14:48:43 +08:00
# ===============================
2025-10-14 16:46:38 +08:00
bytedesk.testing.enabled=false
# bytedesk.testing.account-count=300
# bytedesk.testing.account-username=test
# bytedesk.testing.account-password=password
bytedesk.testing.disable-captcha=true
bytedesk.testing.disable-ip-filter=true
# whitelist ip for performance testing
bytedesk.testing.ip-whitelist=127.0.0.1,127.0.0.2
2025-07-30 14:48:43 +08:00
2025-06-21 11:57:41 +08:00
# ===============================
2025-01-15 16:14:14 +08:00
# Organization config
2025-06-21 11:57:41 +08:00
# ===============================
2025-01-15 16:14:14 +08:00
# organization name
bytedesk.organization.name=MyCompany
# organization code
bytedesk.organization.code=bytedesk
2025-06-21 11:57:41 +08:00
# ===============================
2025-01-15 16:14:14 +08:00
# Features config
2025-06-21 11:57:41 +08:00
# ===============================
2025-01-15 16:14:14 +08:00
# enable java ai
bytedesk.features.java-ai=true
# send email by javamail, valid value: javamail/aliyun
bytedesk.features.email-type=javamail
2025-06-21 11:57:41 +08:00
# 头像的访问地址,请修改为服务器实际的地址
bytedesk.features.avatar-base-url=http://127.0.0.1:9003
2025-01-15 16:14:14 +08:00
2025-06-21 11:57:41 +08:00
# ===============================
2025-01-15 16:14:14 +08:00
# CORS config
2025-06-21 11:57:41 +08:00
# ===============================
2025-01-15 16:14:14 +08:00
bytedesk.cors.allowed-origins=*
2025-06-21 11:57:41 +08:00
# ===============================
2025-01-15 16:14:14 +08:00
# JWT config
2025-06-21 11:57:41 +08:00
# ===============================
2025-01-15 16:14:14 +08:00
bytedesk.jwt.secret-key=1dfaf8d004207b628a9a6b859c429f49a9a7ead9fd8161c1e60847aeef06dbd2
# 30 days, milliseconds
bytedesk.jwt.expiration=2592000000
# 60 days, milliseconds
bytedesk.jwt.refresh-token-expiration=5184000000
2025-06-21 11:57:41 +08:00
# ===============================
2025-01-15 16:14:14 +08:00
# Cache config
2025-06-21 11:57:41 +08:00
# ===============================
2024-08-09 11:06:35 +08:00
# 0: no cache, 1: caffeine cache, 2: caffeine + redis cache
2025-01-15 16:14:14 +08:00
bytedesk.cache.level=0
# cache prefix
bytedesk.cache.prefix=bytedeskim
# redis stream key
bytedesk.cache.redis-stream-key=bytedeskim:stream
2024-08-28 09:32:44 +08:00
# bytedesk.redis-pubsub-channel=bytedeskim:pubsub
2024-08-09 11:06:35 +08:00
2025-06-21 11:57:41 +08:00
# ===============================
# redis pool config
# ===============================
bytedesk.redis.pool-config.maxIdle=64
bytedesk.redis.pool-config.maxTotal=64
bytedesk.redis.pool-config.minIdle=8
# ===============================
#=spring-boot-starter-cache
# https://docs.spring.io/spring-boot/docs/current/reference/html/application-properties.html#appendix.application-properties.cache
# ===============================
# disable caching: none, https://docs.spring.io/spring-boot/docs/3.2.0/reference/htmlsingle/#io.caching.provider.none
# https://docs.spring.io/spring-boot/reference/io/caching.html
# https://docs.spring.io/spring-framework/reference/integration/cache/annotations.html#cache-spel-context
spring.cache.type=none
# spring.cache.type=redis
# spring.cache.type=caffeine
# spring.cache.caffeine.spec=maximumSize=100,expireAfterAccess=5m
#
spring.cache.redis.cache-null-values=false
spring.cache.redis.use-key-prefix=true
spring.cache.redis.key-prefix=bytedeskim:
#
# ===============================
#=spring-boot-starter-data-redis
# https://docs.spring.io/spring-boot/docs/current/reference/html/application-properties.html#appendix.application-properties.data
# REDIS_URL="redis://:qfRxz3tVT8Nh@127.0.0.1:6379/0"
# ===============================
spring.data.redis.database=0
spring.data.redis.host=127.0.0.1
# 默认6379端口为防止与本地冲突docker中为16379
spring.data.redis.port=16379
spring.data.redis.password=qfRxz3tVT8Nh
spring.data.redis.timeout=10000
# disable redis repository
spring.data.redis.repositories.enabled=false
# ===============================
# Upload config
# ===============================
2025-01-15 16:14:14 +08:00
# Upload config, no '/'
bytedesk.upload.type=local
# upload dir
bytedesk.upload.dir=uploads
2025-06-21 11:57:41 +08:00
# 上传文件的访问地址,请修改为服务器实际的地址
2025-01-15 16:14:14 +08:00
bytedesk.upload.url=http://127.0.0.1:9003
2024-08-09 11:06:35 +08:00
2025-07-30 14:48:43 +08:00
# ===============================
# = MinIO 对象存储配置
# ===============================
# 是否启用 MinIO 存储
bytedesk.minio.enabled=false
# MinIO 服务地址
bytedesk.minio.endpoint=http://127.0.0.1:19000
# MinIO 访问密钥
bytedesk.minio.access-key=minioadmin
# MinIO 密钥
bytedesk.minio.secret-key=minioadmin123
# MinIO 存储桶名称
bytedesk.minio.bucket-name=bytedesk
# MinIO 区域
bytedesk.minio.region=us-east-1
# 是否使用 HTTPS
bytedesk.minio.secure=false
2025-06-21 11:57:41 +08:00
# ===============================
2025-01-15 16:14:14 +08:00
# Knowledge base config
2025-06-21 11:57:41 +08:00
# ===============================
2024-11-24 21:47:13 +08:00
# theme: default/eduport/social/kbdoc
2024-08-09 11:06:35 +08:00
bytedesk.kbase.theme=default
2025-01-15 16:14:14 +08:00
# html path
2024-11-24 21:47:13 +08:00
bytedesk.kbase.html-path=helpcenter
# bytedesk.kbase.template-path=classpath:/templates/ftl/kbase
2025-06-21 11:57:41 +08:00
# 知识库的访问地址,请修改为服务器实际的地址
2024-11-24 21:47:13 +08:00
bytedesk.kbase.api-url=http://127.0.0.1:9003
2024-08-28 09:32:44 +08:00
2024-08-09 11:06:35 +08:00
# ===============================
#=com.bytedesk.socket module
# ===============================
2025-01-15 16:14:14 +08:00
# enable socket
bytedesk.socket.enabled=true
# socket host
2024-08-09 11:06:35 +08:00
bytedesk.socket.host=0.0.0.0
2025-01-15 16:14:14 +08:00
# socket port
2024-11-24 21:47:13 +08:00
# bytedesk.socket.port=9883
2025-01-15 16:14:14 +08:00
# websocket port
2024-08-09 11:06:35 +08:00
bytedesk.socket.websocket-port=9885
2025-01-15 16:14:14 +08:00
# leak detector level
2024-08-09 11:06:35 +08:00
bytedesk.socket.leak-detector-level=SIMPLE
2025-01-15 16:14:14 +08:00
# parent event loop group thread count
2024-08-09 11:06:35 +08:00
bytedesk.socket.parent-event-loop-group-thread-count=1
2025-01-15 16:14:14 +08:00
# child event loop group thread count
2024-08-09 11:06:35 +08:00
bytedesk.socket.child-event-loop-group-thread-count=8
2025-01-15 16:14:14 +08:00
# max payload size
2024-08-09 11:06:35 +08:00
bytedesk.socket.max-payload-size=10240
2025-10-14 16:46:38 +08:00
# ===============================
#= Call FreeSwitch config
# ===============================
# enable call freeswitch
bytedesk.call.freeswitch.enabled=false
# freeswitch server ip
bytedesk.call.freeswitch.server=127.0.0.1
# esl port
bytedesk.call.freeswitch.esl-port=8021
# esl password
bytedesk.call.freeswitch.esl-password=password
# sip port - 根据服务器实际端口修改
bytedesk.call.freeswitch.sip-port=5060
# webrtc port - 根据服务器实际端口修改
bytedesk.call.freeswitch.webrtc-port=7443
# websocket signal port - 根据服务器实际端口修改
bytedesk.call.freeswitch.ws-port=5066
# call timeout seconds - 增加超时时间
bytedesk.call.freeswitch.call-timeout=120
# rtp port range - 扩大端口范围
# bytedesk.call.freeswitch.rtp-port-start=16000
# bytedesk.call.freeswitch.rtp-port-end=16999
# 新增配置
# bytedesk.call.freeswitch.max-sessions=1000
# bytedesk.call.freeswitch.sessions-per-second=30
# bytedesk.call.freeswitch.log-level=WARNING
# ===============================
#= etcd 分布式键值存储配置
# ===============================
# 是否启用 etcd
bytedesk.etcd.enabled=false
# etcd 服务器端点列表(支持多个,逗号分隔)
bytedesk.etcd.endpoints=http://localhost:12379
# 连接超时时间(毫秒)
bytedesk.etcd.connect-timeout=5000
# 请求超时时间(毫秒)
bytedesk.etcd.request-timeout=3000
# 命名空间/前缀(用于隔离不同应用的数据)
bytedesk.etcd.namespace=/bytedesk
# 用户名(如果需要认证)
# bytedesk.etcd.username=
# 密码(如果需要认证)
# bytedesk.etcd.password=
# 租约 TTL- 用于服务注册等场景
bytedesk.etcd.lease-ttl=30
# 租约续期间隔(秒)
bytedesk.etcd.lease-keep-alive-interval=10
2024-08-09 11:06:35 +08:00
# ===============================
#=com.bytedesk.cluster module
# ===============================
2025-01-15 16:14:14 +08:00
# enable cluster
bytedesk.cluster.enabled=false
# cluster nodes
bytedesk.cluster.nodes=127.0.0.1,127.0.0.2
2024-08-28 09:32:44 +08:00
# bytedesk.cluster.host=230.0.0.0
# bytedesk.cluster.port=6781
# bytedesk.cluster.client-port=6771
2024-08-09 11:06:35 +08:00
2024-10-07 08:03:15 +08:00
# ===============================
#= push
# ===============================
2025-01-15 16:14:14 +08:00
# apns bundle id
2024-10-07 08:03:15 +08:00
bytedesk.push.apns.bundle-id=com.kefux.im
2025-01-15 16:14:14 +08:00
# apns p12 url
2024-10-07 08:03:15 +08:00
bytedesk.push.apns.p12-url=123.p12
2025-01-15 16:14:14 +08:00
# apns p12 password
2024-10-07 08:03:15 +08:00
bytedesk.push.apns.p12-password=123456
2025-07-30 14:48:43 +08:00
# ===============================
#= Watermark config
# ===============================
# 是否启用水印功能
bytedesk.watermark.enabled=true
# 水印文字
bytedesk.watermark.text=bytedesk.com
# 水印位置: TOP_LEFT, TOP_RIGHT, BOTTOM_LEFT, BOTTOM_RIGHT, CENTER
bytedesk.watermark.position=BOTTOM_RIGHT
# 字体大小
bytedesk.watermark.fontSize=24
# 字体名称
bytedesk.watermark.fontName=Arial
# 水印颜色 (RGBA格式: R,G,B,A)
bytedesk.watermark.color=255,255,255,128
# 透明度 (0.0-1.0)
bytedesk.watermark.opacity=0.5
# 边距
bytedesk.watermark.margin=20
# 是否只对图片文件添加水印
bytedesk.watermark.imageOnly=true
# 最小图片尺寸(像素),小于此尺寸的图片不添加水印
bytedesk.watermark.minImageSize=100
# 最大图片尺寸(像素),大于此尺寸的图片不添加水印
bytedesk.watermark.maxImageSize=5000
2025-06-21 11:57:41 +08:00
2025-10-14 16:46:38 +08:00
# ===============================
# = oauth
# githubhttps://github.com/settings/applications/new
# ===============================
bytedesk.oauth.github.enabled=true
bytedesk.oauth.github.client-id=clientid
bytedesk.oauth.github.client-secret=clientid
# GitHub 完成授权后跳转到前端回调页的地址
bytedesk.oauth.github.redirect-uri=
# Google OAuth 配置
bytedesk.oauth.google.enabled=true
bytedesk.oauth.google.client-id=
bytedesk.oauth.google.client-secret=
bytedesk.oauth.google.redirect-uri=
# WeChat OAuth 配置(开放平台/公众号网页授权)
bytedesk.oauth.wechat.enabled=true
bytedesk.oauth.wechat.app-id=
bytedesk.oauth.wechat.app-secret=
bytedesk.oauth.wechat.redirect-uri=
# Facebook OAuth 配置
bytedesk.oauth.facebook.enabled=true
bytedesk.oauth.facebook.client-id=
bytedesk.oauth.facebook.client-secret=
bytedesk.oauth.facebook.redirect-uri=
# DingTalk OAuth 配置
bytedesk.oauth.dingtalk.enabled=true
bytedesk.oauth.dingtalk.app-id=
bytedesk.oauth.dingtalk.app-secret=
bytedesk.oauth.dingtalk.redirect-uri=
# DouYin OAuth 配置
bytedesk.oauth.douyin.enabled=true
bytedesk.oauth.douyin.client-key=
bytedesk.oauth.douyin.client-secret=
bytedesk.oauth.douyin.redirect-uri=
# Feishu OAuth 配置
bytedesk.oauth.feishu.enabled=true
bytedesk.oauth.feishu.app-id=
bytedesk.oauth.feishu.app-secret=
bytedesk.oauth.feishu.redirect-uri=
# LDAP 登录配置Bytedesk 自有 LDAP 登录,与 Spring LDAP 基础配置配合使用)
bytedesk.oauth.ldap.enabled=false
# 登录时若无邮箱可按此域名拼接(例如: username@yourdomain.com
bytedesk.oauth.ldap.default-email-domain=
# CAS 单点登录配置
bytedesk.oauth.cas.enabled=false
# CAS 服务器地址例如https://cas.example.com
bytedesk.oauth.cas.server-url=
# 登录路径,默认 /login
bytedesk.oauth.cas.login-path=/login
# 校验路径,建议使用 p3 接口,默认 /p3/serviceValidate
bytedesk.oauth.cas.validate-path=/p3/serviceValidate
# 当前系统在 CAS 注册的回调地址service用于校验 ticket
bytedesk.oauth.cas.service-redirect-uri=
# 默认邮箱域(当 CAS 返回无邮箱时用于拼接)
bytedesk.oauth.cas.default-email-domain=
# OIDC 标准登录配置(基于发现文档)
bytedesk.oauth.oidc.enabled=false
# Issuer 地址例如https://login.microsoftonline.com/{tenant}/v2.0
bytedesk.oauth.oidc.issuer=
bytedesk.oauth.oidc.client-id=
bytedesk.oauth.oidc.client-secret=
bytedesk.oauth.oidc.redirect-uri=
# OpenID通用 OAuth/OpenID 风格,自配置端点)
bytedesk.oauth.openid.enabled=false
bytedesk.oauth.openid.authorization-endpoint=
bytedesk.oauth.openid.token-endpoint=
bytedesk.oauth.openid.user-info-endpoint=
bytedesk.oauth.openid.client-id=
bytedesk.oauth.openid.client-secret=
bytedesk.oauth.openid.redirect-uri=
# 用户名字段,默认 email可配置为 sub/username 等
bytedesk.oauth.openid.username-field=email
2025-01-15 16:14:14 +08:00
# ===============================
2025-03-26 22:14:23 +08:00
# LDAP Configuration
2025-01-15 16:14:14 +08:00
# ===============================
2025-10-14 16:46:38 +08:00
# # 是否启用LDAP
# spring.ldap.enabled=false
# # LDAP 服务器地址
# spring.ldap.urls=ldap://127.0.0.1:389
# # LDAP 基础目录
# spring.ldap.base=dc=example,dc=com
# # LDAP 管理员用户名完整DN
# spring.ldap.username=cn=admin,dc=example,dc=com
# # LDAP 管理员密码
# spring.ldap.password=admin
# # LDAP 是否只读
# spring.ldap.anonymous-read-only=false
# # LDAP 是否启用匿名访问
# spring.ldap.anonymous-enabled=false
2025-03-26 22:14:23 +08:00
# ===============================
# SSO Configuration
# ===============================
# 是否启用SSO
2025-10-14 16:46:38 +08:00
# spring.security.oauth2.client.enabled=false
2025-03-26 22:14:23 +08:00
2025-01-15 16:14:14 +08:00
2024-08-09 11:06:35 +08:00
# ===============================
#=logging
# https://docs.spring.io/spring-boot/docs/current/reference/html/application-properties.html#appendix.application-properties.core
# 五种levelTRACE、DEBUG、INFO、WARN和ERROR
# ===============================
2024-11-24 21:47:13 +08:00
# 会打印sqlLog
2024-10-07 08:03:15 +08:00
# debug=true
# trace=true
2025-03-26 22:14:23 +08:00
# 隐藏其他常见的DEBUG日志
# logging.level.org.springframework=INFO
# logging.level.org.hibernate=INFO
# logging.level.org.apache=INFO
# 设置自定义包的日志级别
# logging.level.com.bytedesk=INFO
2024-08-09 11:06:35 +08:00
logging.level.web=DEBUG
2025-03-06 22:22:27 +08:00
logging.level.org.springframework.security.web.FilterChainProxy=WARN
2025-01-15 16:14:14 +08:00
logging.level.org.springframework.web.socket=INFO
2025-03-26 22:14:23 +08:00
# 设置 FreeMarker 的日志级别为 INFO
logging.level.org.springframework.web.servlet.view.freemarker=WARN
logging.level.org.springframework.data.repository.config.RepositoryConfigurationExtensionSupport=WARN
#
logging.level.org.hibernate.orm.connections.pooling=WARN
2025-04-24 23:07:49 +08:00
# 关闭StringDecoder相关的日志
logging.level.org.springframework.core.codec.StringDecoder=WARN
# 关闭reactor-http相关日志
logging.level.reactor.netty.http=WARN
logging.level.org.springframework.web.client.DefaultRestClient=WARN
2025-10-14 16:46:38 +08:00
# 抑制Spring Security AuthenticationProvider/UserDetailsService配置警告
logging.level.org.springframework.security.config.annotation.authentication.configuration.InitializeUserDetailsBeanManagerConfigurer=ERROR
2025-03-26 22:14:23 +08:00
# 完全禁用某些包的日志
# logging.level.org.springframework.web.servlet.view.freemarker=OFF
2024-09-11 19:24:23 +08:00
# logging.level.org.springframework.messaging=WARN
2024-08-09 11:06:35 +08:00
# logging.level.org.springframework.web=INFO
# logging.level.org.springframework.security=INFO
# logging.level.root=DEBUG
logging.level.com.bytedesk.ai=DEBUG
logging.level.com.bytedesk.core=DEBUG
logging.level.com.bytedesk.kbase=DEBUG
logging.level.com.bytedesk.service=DEBUG
logging.level.com.bytedesk.social=DEBUG
2025-07-18 17:45:50 +08:00
logging.level.com.bytedesk.wechat=DEBUG
logging.level.com.bytedesk.shop=DEBUG
2024-08-09 11:06:35 +08:00
logging.level.com.bytedesk.team=DEBUG
logging.level.com.bytedesk.ticket=DEBUG
logging.level.com.bytedesk.starter=DEBUG
2025-07-18 17:45:50 +08:00
#
2025-03-02 23:18:40 +08:00
logging.level.org.springframework.web.client.DefaultRestClient=WARN
2024-08-09 11:06:35 +08:00
logging.file.name=logs/bytedeskim.log
logging.file.max-size=10MB
2024-10-07 08:03:15 +08:00
logging.file.max-history=5
# 2024-09-19T13:07:39.031+08:00 INFO 4043 --- [bytedesk] [ main] liquibase.util : UPDATE SUMMARY
# logging.pattern.console=[TRACEID:%X{traceId}] %clr(%5p) %d{HH:mm:ss.SSS} %class{-1}: %msg%xEx%n
logging.pattern.console=[TRACEID:%X{traceId}] %clr(%d{${LOG_DATEFORMAT_PATTERN:yyyy-MM-dd HH:mm:ss.SSS}}){faint} %clr(${LOG_LEVEL_PATTERN:%5p}) %clr(${PID:- }){magenta} %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}
logging.pattern.file=[TRACEID:%X{traceId}]-%clr(%d{${LOG_DATEFORMAT_PATTERN:yyyy-MM-dd HH:mm:ss.SSS}}){faint}-%clr(${LOG_LEVEL_PATTERN:%5p}) %clr(${PID:- }){magenta} %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}
2024-08-09 11:06:35 +08:00
2024-10-14 07:24:06 +08:00
# ===============================
#= alibaba druid
# http://127.0.0.1:9003/druid
# https://github.com/alibaba/druid/wiki/DruidDataSource%E9%85%8D%E7%BD%AE%E5%B1%9E%E6%80%A7%E5%88%97%E8%A1%A8
# ===============================
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
# druid properties
spring.datasource.druid.initial-size=10
spring.datasource.druid.min-idle=10
spring.datasource.druid.max-active=100
spring.datasource.druid.max-wait=60000
spring.datasource.druid.time-between-eviction-runs-millis=60000
spring.datasource.druid.min-evictable-idle-time-millis=300000
spring.datasource.druid.validation-query=SELECT 'x'
spring.datasource.druid.test-while-idle=true
spring.datasource.druid.test-on-borrow=false
spring.datasource.druid.test-on-return=false
spring.datasource.druid.stat-view-servlet.enabled=true
spring.datasource.druid.stat-view-servlet.url-pattern=/druid/*
spring.datasource.druid.stat-view-servlet.login-username=admin@email.com
spring.datasource.druid.stat-view-servlet.login-password=admin
# spring.datasource.druid.stat-view-servlet.reset-enable=false
# spring.datasource.druid.stat-view-servlet.allow=127.0.0.1
# spring.datasource.druid.stat-view-servlet.deny=
spring.datasource.druid.filters=config,stat
spring.datasource.druid.filter.stat.log-slow-sql=true
spring.datasource.druid.filter.stat.slow-sql-millis=1
# spring.datasource.druid.web-stat-filter.enabled=true
# spring.datasource.druid.web-stat-filter.url-pattern=/*
# spring.datasource.druid.web-stat-filter.exclusions=*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*
2024-08-09 11:06:35 +08:00
# ===============================
#= h2
# https://docs.spring.io/spring-boot/docs/current/reference/html/application-properties.html#appendix.application-properties.data
# ===============================
# http://127.0.0.1:9003/h2-console
# spring.h2.console.enabled=true
# spring.h2.console.path=/h2-console
# spring.h2.console.settings.trace=false
# spring.h2.console.settings.web-allow-others=false
# #
# # spring.datasource.url=jdbc:h2:mem:testdb
# spring.datasource.url=jdbc:h2:file:./h2db/weiyuim
# spring.datasource.driverClassName=org.h2.Driver
# spring.datasource.username=sa
# spring.datasource.password=sa
# spring.jpa.database-platform=org.hibernate.dialect.H2Dialect
# spring.jpa.defer-datasource-initialization=true
# ===============================
#= mysql
# https://docs.spring.io/spring-boot/docs/current/reference/html/application-properties.html#appendix.application-properties.data
# ===============================
2025-04-24 23:07:49 +08:00
# 默认使用3306端口为防止本地冲突docker中为13306
spring.datasource.url=jdbc:mysql://127.0.0.1:13306/bytedesk?useUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=true
# spring.datasource.url=jdbc:mysql://127.0.0.1:3306/bytedesk?useUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=true
2024-08-09 11:06:35 +08:00
spring.datasource.username=root
2024-08-28 09:32:44 +08:00
spring.datasource.password=r8FqfdbWUaN3
2024-08-09 11:06:35 +08:00
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.jpa.database=mysql
2025-08-14 10:51:07 +08:00
# spring.jpa.database-platform=org.hibernate.dialect.MySQLDialect # Hibernate会自动检测方言无需显式设置
2024-09-11 19:24:23 +08:00
spring.quartz.properties.org.quartz.jobStore.driverDelegateClass=org.quartz.impl.jdbcjobstore.StdJDBCDelegate
2024-08-09 11:06:35 +08:00
# ===============================
2024-10-07 08:03:15 +08:00
#= postgresql
2024-08-09 11:06:35 +08:00
# https://docs.spring.io/spring-boot/docs/current/reference/html/application-properties.html#appendix.application-properties.data
# 因本地占用将5432改为5433
2025-02-12 13:47:47 +08:00
# DATABASE_URL="postgresql://postgres:r8FqfdbWUaN3@localhost:5433/bytedesk"
2024-08-09 11:06:35 +08:00
# ===============================
2025-02-12 13:47:47 +08:00
# spring.datasource.url=jdbc:postgresql://127.0.0.1:5433/bytedesk
2024-08-09 11:06:35 +08:00
# spring.datasource.username=postgres
2024-11-24 21:47:13 +08:00
# spring.datasource.password=r8FqfdbWUaN3
2024-08-09 11:06:35 +08:00
# spring.datasource.driver-class-name=org.postgresql.Driver
# spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect
2024-09-11 19:24:23 +08:00
# spring.quartz.properties.org.quartz.jobStore.driverDelegateClass=org.quartz.impl.jdbcjobstore.PostgreSQLDelegate
2024-08-09 11:06:35 +08:00
# ===============================
#=spring-boot-starter-data-jpa
# https://docs.spring.io/spring-boot/docs/current/reference/html/application-properties.html#appendix.application-properties.data
# ===============================
# 生产环境关闭update模式使用validate
# update/none/validate/create/create-drop
spring.jpa.hibernate.ddl-auto=update
spring.jpa.show-sql=false
spring.jpa.properties.hibernate.format_sql=false
spring.jpa.properties.hibernate.enable_lazy_load_no_trans=true
2025-03-26 22:14:23 +08:00
spring.jpa.open-in-view=false
2025-07-18 17:45:50 +08:00
# 设置 Hibernate 时区为 Asia/Shanghai
spring.jpa.properties.hibernate.jdbc.time_zone=Asia/Shanghai
2024-08-09 11:06:35 +08:00
# https://www.cnblogs.com/suizhikuo/p/16997225.html
2025-07-18 17:45:50 +08:00
# spring.jackson.date-format=yyyy-MM-dd HH:mm:ss
spring.jackson.date-format=yyyy-MM-dd'T'HH:mm:ss.SSSX
2024-08-09 11:06:35 +08:00
spring.jackson.time-zone=GMT+8
2025-06-21 11:57:41 +08:00
2024-08-09 11:06:35 +08:00
# ===============================
#=spring-boot-starter-data-rest
# http://127.0.0.1:9003/rest/api/profile
# https://docs.spring.io/spring-data/rest/reference/index.html
# https://docs.spring.io/spring-boot/docs/current/reference/html/application-properties.html#application-properties.data.spring.data.rest.base-path
# ===============================
spring.data.rest.base-path=/api
# spring.data.rest.default-page-size=20
# spring.data.rest.max-page-size=
# spring.data.rest.page-param-name=page
# spring.data.rest.limit-param-name=size
# spring.data.rest.sort-param-name=sort
spring.data.rest.return-body-on-create=true
spring.data.rest.return-body-on-update=true
# spring.data.rest.sort-param-name=
# ===============================
#=spring-boot-starter-actuator
# https://docs.spring.io/spring-boot/docs/current/reference/html/application-properties.html#appendix.application-properties.actuator
# https://docs.spring.io/spring-boot/docs/current/actuator-api/htmlsingle/#prometheus
# https://docs.micrometer.io/micrometer/reference/implementations/prometheus.html
# http://127.0.0.1:9003/actuator
2025-04-24 23:07:49 +08:00
# 健康检查http://127.0.0.1:9003/actuator/health
# 所有指标http://127.0.0.1:9003/actuator/metrics
# 特定指标http://127.0.0.1:9003/actuator/metrics/{metric.name}
# Prometheus 格式http://127.0.0.1:9003/actuator/prometheus
# http://127.0.0.1:9003/actuator/prometheus # Prometheus 指标接口
# Prometheus UI
# http://127.0.0.1:19090 # Prometheus 管理界面
# Grafana
# http://127.0.0.1:13000 # Grafana 管理界面
# - 用户名admin
# - 密码admin
# ===============================
# 关闭所有actuator端点
2025-10-14 16:46:38 +08:00
management.endpoints.enabled-by-default=false
2024-08-09 11:06:35 +08:00
management.endpoints.web.base-path=/actuator
2025-04-24 23:07:49 +08:00
management.endpoints.web.exposure.include=health,metrics,prometheus
management.endpoint.health.show-details=always
management.endpoint.metrics.enabled=true
2024-08-09 11:06:35 +08:00
management.endpoint.prometheus.enabled=true
2025-04-24 23:07:49 +08:00
# Metrics configuration
management.metrics.tags.application=bytedesk
management.metrics.distribution.percentiles-histogram.http.server.requests=true
management.metrics.distribution.sla.http.server.requests=100ms,400ms,500ms
# Prometheus configuration
2024-08-09 11:06:35 +08:00
management.prometheus.metrics.export.enabled=true
2025-07-18 23:47:47 +08:00
# ===============================
# = Zipkin Tracing Configuration
# ===============================
# 关闭 Zipkin 追踪
management.tracing.enabled=false
management.zipkin.tracing.enabled=false
# management.zipkin.tracing.endpoint=http://127.0.0.1:9411/api/v2/spans
# 或者设置采样概率为0来禁用追踪
management.tracing.sampling.probability=0.0
2025-04-24 23:07:49 +08:00
# Prometheus Admin Credentials
# spring.docker.compose.service.bytedesk-prometheus.environment.PROMETHEUS_ADMIN_USER=admin
# spring.docker.compose.service.bytedesk-prometheus.environment.PROMETHEUS_ADMIN_PASSWORD=admin
# Grafana Admin Credentials
# spring.docker.compose.service.bytedesk-grafana.environment.GF_SECURITY_ADMIN_USER=admin
# spring.docker.compose.service.bytedesk-grafana.environment.GF_SECURITY_ADMIN_PASSWORD=admin
# spring.docker.compose.service.bytedesk-grafana.environment.GF_AUTH_ANONYMOUS_ENABLED=false
#
2024-08-09 11:06:35 +08:00
# ===============================
#=spring-boot-starter-admin-client
# https://github.com/codecentric/spring-boot-admin?tab=readme-ov-file
# https://docs.spring-boot-admin.com/current/getting-started.html
# ===============================
spring.boot.admin.client.url=http://127.0.0.1:9003
# spring.boot.admin.ui.public-url=http://127.0.0.1:9003/actuator/admin
# ===============================
#=springdoc
# https://springdoc.org/#properties
# http://127.0.0.1:9003/swagger-ui/index.html
# http://127.0.0.1:9003/v3/api-docs
# ===============================
springdoc.show-actuator=false
2025-03-02 23:18:40 +08:00
# swagger-ui
# http://127.0.0.1:9003/swagger-ui/index.html
2024-08-09 11:06:35 +08:00
springdoc.swagger-ui.enabled=true
springdoc.swagger-ui.path=/index.html
2025-03-02 23:18:40 +08:00
# api-docs
2024-08-09 11:06:35 +08:00
springdoc.api-docs.enabled=true
springdoc.api-docs.path=/v3/api-docs
2025-03-02 23:18:40 +08:00
# knife4j
# http://127.0.0.1:9003/doc.html
knife4j.enabled=true
knife4j.setting.language=zh_cn
2024-08-09 11:06:35 +08:00
# ===============================
#=spring-boot-devtools
# https://docs.spring.io/spring-boot/docs/current/reference/html/application-properties.html#appendix.application-properties.devtools
# ===============================
spring.devtools.restart.poll-interval=2s
spring.devtools.restart.quiet-period=1s
#
# ===============================
# = Apache ActiveMQ Artemis logger levels
# ===============================
# https://activemq.apache.org/components/artemis/documentation/latest/logging.html
# https://codeaches.com/spring-boot/embedded-activemq-artemis-jms-broker
logging.level.org.apache.activemq.artemis.core.server=WARN
logging.level.org.apache.activemq.artemis.utils=WARN
logging.level.org.apache.activemq.artemis.jms=WARN
logging.level.org.apache.activemq.audit.base=WARN
logging.level.org.apache.activemq.audit.message=WARN
# ===============================
# = spring-boot-starter-artemis
2024-11-24 21:47:13 +08:00
# = jms artemis
# https://spring.io/guides/gs/messaging-jms
# https://docs.spring.io/spring-boot/reference/messaging/jms.html
# https://activemq.apache.org/components/artemis/documentation/latest/index.html
# spring.jms.pub-sub-domain=true
# ===============================
spring.artemis.mode=embedded
# spring.artemis.mode=native
# spring.artemis.broker-url=tcp://127.0.0.1:61617
# spring.artemis.user=admin
# spring.artemis.password=admin
# ===============================
2025-10-14 16:46:38 +08:00
# spring.artemis.broker-url=tcp://154.89.155.120:61617
# spring.artemis.user=admin
# spring.artemis.password=admin
# ===============================
# = LDAP 健康检查配置
# ===============================
# 禁用LDAP健康检查避免在没有LDAP服务时导致整体健康状态为DOWN
management.health.ldap.enabled=false
# ===============================
# = spring mail
2024-11-24 21:47:13 +08:00
# https://springdoc.cn/spring-boot/application-properties.html#appendix.application-properties.mail
# ===============================
spring.mail.host=smtp.qq.com
spring.mail.port=465
# spring.mail.username=
# spring.mail.password=
spring.mail.data-encoding=UTF-8
spring.mail.protocol=smtps
spring.mail.properties.mail.smtp.connectiontimeout=5000
spring.mail.properties.mail.smtp.timeout=3000
spring.mail.properties.mail.smtp.auth=true
spring.mail.properties.mail.smtp.starttls.enable=true
spring.mail.properties.mail.smtp.starttls.required=true
2024-08-09 11:06:35 +08:00
#
# ===============================
# = Quartz
# https://github.com/quartz-scheduler/quartz
# https://docs.spring.io/spring-boot/reference/io/quartz.html
# https://medium.com/@ChamithKodikara/spring-boot-2-quartz-2-scheduler-integration-a8eaaf850805
# SpringBoot官方说明https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-quartz.html
# Quartz官方文档https://www.quartz-scheduler.org/documentation/2.3.1-SNAPSHOT/tutorials/index.html
# ===============================
spring.quartz.job-store-type=jdbc
2025-02-15 08:54:10 +08:00
# # 3种模式: ALWAYS、EMBEDDED、NEVER
2024-08-09 11:06:35 +08:00
# 首次启动时创建表但每次都会清空数据初始化之后需要修改为never
spring.quartz.jdbc.initialize-schema=always
# spring.quartz.jdbc.initialize-schema=never
spring.quartz.wait-for-jobs-to-complete-on-shutdown=true
#
spring.quartz.properties.org.quartz.scheduler.instanceName=BytedeskScheduler
spring.quartz.properties.org.quartz.scheduler.instanceId=AUTO
#spring.quartz.properties.org.quartz.scheduler.instanceIdGenerator.class=io.xiaper.schedule.util.CustomQuartzInstanceIdGenerator
#
spring.quartz.properties.org.quartz.jobStore.isClustered=true
spring.quartz.properties.org.quartz.jobStore.tablePrefix=QRTZ_
# spring.quartz.properties.org.quartz.jobStore.class=org.quartz.impl.jdbcjobstore.JobStoreTX
spring.quartz.properties.org.quartz.jobStore.class=org.springframework.scheduling.quartz.LocalDataSourceJobStore
spring.quartz.properties.org.quartz.jobStore.clusterCheckinInterval=10000
spring.quartz.properties.org.quartz.jobStore.useProperties=false
#
spring.quartz.properties.org.quartz.threadPool.class=org.quartz.simpl.SimpleThreadPool
spring.quartz.properties.org.quartz.threadPool.threadCount=5
spring.quartz.properties.org.quartz.threadPool.threadPriority=5
spring.quartz.properties.org.quartz.threadPool.threadsInheritContextClassLoaderOfInitializingThread=true
#
# ===============================
# = multipart file uploads
# ===============================
spring.servlet.multipart.enabled=true
# Write files to disk if the file size is more than 2KB.
spring.servlet.multipart.file-size-threshold=2KB
# The intermediate disk location where the uploaded files are written
# jetty里面开启这个配置会报错
# spring.servlet.multipart.location=/tmp
# Maximum file size that can be uploaded
spring.servlet.multipart.max-file-size=100MB
# Maximum allowed multipart request size
spring.servlet.multipart.max-request-size=100MB
# ===============================
# = spring-session-data-redis
# https://docs.spring.io/spring-session/reference/guides/boot-redis.html
# ===============================
# server.servlet.session.cookie.name=MY_SESSION_COOKIE
# server.servlet.session.cookie.max-age=3600
# server.servlet.session.cookie.domain
# server.servlet.session.cookie.path
# not working?
# spring.session.redis.namespace=bytedeskim
#
# ===============================
# = ai
# ===============================
# spring.mvc.async.request-timeout=10000
logging.level.org.springframework.ai.chat.client.advisor=DEBUG
2025-06-21 11:57:41 +08:00
# 启用Spring AI的观察功能
spring.ai.observation.enabled=true
spring.ai.retry.observation.enabled=true
2025-10-14 16:46:38 +08:00
# 文本对话配置
# https://www.weiyuai.cn/docs/zh-CN/docs/provider/model_text
2025-06-21 11:57:41 +08:00
# spring.ai.model.chat=none
2025-07-18 17:45:50 +08:00
# spring.ai.model.chat=ollama
spring.ai.model.chat=zhipuai
2025-10-14 16:46:38 +08:00
# spring.ai.model.chat=dashscope
2025-06-21 11:57:41 +08:00
# 向量模型
2025-10-14 16:46:38 +08:00
# https://www.weiyuai.cn/docs/zh-CN/docs/provider/model_embedding
2025-06-21 11:57:41 +08:00
# spring.ai.model.embedding=none
2025-07-18 17:45:50 +08:00
# spring.ai.model.embedding=ollama
spring.ai.model.embedding=zhipuai
2025-10-14 16:46:38 +08:00
# spring.ai.model.embedding=dashscope
2025-06-21 11:57:41 +08:00
2025-07-16 14:54:59 +08:00
# 视觉模型
2025-10-14 16:46:38 +08:00
# https://www.weiyuai.cn/docs/zh-CN/docs/provider/model_vision
2025-07-16 14:54:59 +08:00
# spring.ai.model.vision=none
2025-07-18 17:45:50 +08:00
# spring.ai.model.vision=ollama
spring.ai.model.vision=zhipuai
2025-10-14 16:46:38 +08:00
# spring.ai.model.vision=dashscope
#
spring.ai.model.image=none
spring.ai.model.moderation=none
2025-07-16 14:54:59 +08:00
# 语音模型
2025-07-17 16:06:07 +08:00
# spring.ai.model.audio=none
2025-07-18 17:45:50 +08:00
# spring.ai.model.audio=ollama
spring.ai.model.audio=zhipuai
2025-10-14 16:46:38 +08:00
# spring.ai.model.audio=dashscope
#
spring.ai.model.audio.speech=none
spring.ai.model.audio.transcription=none
2025-07-16 14:54:59 +08:00
# 重排序模型
# spring.ai.model.rerank=none
2025-07-18 17:45:50 +08:00
# spring.ai.model.rerank=ollama
spring.ai.model.rerank=zhipuai
2025-10-14 16:46:38 +08:00
# spring.ai.model.rerank=dashscope
# 多模态模型
# spring.ai.model.multimodal=none
# spring.ai.model.multimodal=ollama
spring.ai.model.multimodal=zhipuai
# spring.ai.model.multimodal=dashscope
2025-07-16 14:54:59 +08:00
2025-04-24 23:07:49 +08:00
# ollama:
# https://docs.spring.io/spring-ai/reference/api/chat/ollama-chat.html
# spring.ai.ollama.init.pull-model-strategy=always
# 默认11434为防止本地冲突如果是docker需要修改为21434
# spring.ai.ollama.base-url=http://127.0.0.1:11434
spring.ai.ollama.base-url=http://127.0.0.1:21434
spring.ai.ollama.chat.enabled=true
# spring.ai.ollama.chat.options.model=deepseek-r1:latest
2025-05-01 11:39:04 +08:00
spring.ai.ollama.chat.options.model=qwen3:0.6b
2025-04-24 23:07:49 +08:00
spring.ai.ollama.chat.options.temperature=0.7
# spring.ai.ollama.chat.options.numa=false
# https://docs.spring.io/spring-ai/reference/api/embeddings/ollama-embeddings.html
spring.ai.ollama.embedding.enabled=true
# https://github.com/ollama/ollama?tab=readme-ov-file#model-library
spring.ai.ollama.embedding.options.model=bge-m3:latest
# spring.ai.ollama.embedding.options.numa=false
# spring.ai.ollama.init.timeout=60s
# spring.ai.ollama.init.max-retries=2
2025-06-21 11:57:41 +08:00
# https://huggingface.co/BAAI/bge-reranker-v2-m3
spring.ai.ollama.embedding.options.model.rerank=linux6200/bge-reranker-v2-m3:latest
2025-04-24 23:07:49 +08:00
2025-02-15 08:54:10 +08:00
# zhipuai
# https://open.bigmodel.cn/overview
# https://docs.spring.io/spring-ai/reference/api/embeddings/zhipuai-embeddings.html
# https://docs.spring.io/spring-ai/reference/api/chat/zhipuai-chat.html
2025-03-02 23:18:40 +08:00
# spring.ai.zhipuai.base-url=https://open.bigmodel.cn/api/paas
# 申请智谱AI API Keyhttps://www.bigmodel.cn/usercenter/proj-mgmt/apikeys
2025-02-15 08:54:10 +08:00
# spring.ai.zhipuai.chat.base-url=URL_ADDRESS
2025-03-26 22:14:23 +08:00
spring.ai.zhipuai.api-key='sk-xxx'
2025-10-14 16:46:38 +08:00
spring.ai.zhipuai.chat.enabled=true
2025-02-15 08:54:10 +08:00
# 免费模型https://open.bigmodel.cn/dev/api#glm-4
2025-10-14 16:46:38 +08:00
spring.ai.zhipuai.chat.options.model=glm-4.5-flash
2025-02-15 08:54:10 +08:00
spring.ai.zhipuai.chat.options.temperature=0.7
2025-03-02 23:18:40 +08:00
# https://docs.spring.io/spring-ai/reference/api/embeddings/zhipuai-embeddings.html
2025-10-14 16:46:38 +08:00
spring.ai.zhipuai.embedding.enabled=true
2025-03-02 23:18:40 +08:00
# spring.ai.zhipuai.embedding.base-url=https://api.bigmodel.cn
# spring.ai.zhipuai.embedding.api-key=sk-xxx
2025-06-21 11:57:41 +08:00
# 1024维度的模型
spring.ai.zhipuai.embedding.options.model=embedding-2
# 2048维度的模型
# spring.ai.zhipuai.embedding.options.model=embedding-3
2025-02-15 08:54:10 +08:00
#
2025-03-02 23:18:40 +08:00
# spring ai alibaba
# https://java2ai.com/docs/dev/get-started/
# 阿里云百炼大模型获取api key
# https://bailian.console.aliyun.com/?apiKey=1#/api-key
# 阿里云百炼大模型模型列表:
# https://bailian.console.aliyun.com/?spm=a2c4g.11186623.0.0.11c67980m5X2VR#/model-market
2025-10-14 16:46:38 +08:00
spring.ai.dashscope.enabled=false
# spring.ai.dashscope.base-url=https://dashscope.aliyuncs.com
# spring.ai.dashscope.api-key=sk-xxx
# spring.ai.dashscope.chat.enabled=false
# spring.ai.dashscope.chat.options.model=qwen-max
# spring.ai.dashscope.chat.options.temperature=0.7
# spring.ai.dashscope.chat.options.topP=3
# spring.ai.dashscope.audio.transcription.enabled=false
# spring.ai.dashscope.image.enabled=false
# spring.ai.dashscope.embedding.enabled=false
# spring.ai.dashscope.audio.synthesis.enabled=false
# spring.ai.nacos.prompt.template.enabled=false
# ===============================
# = 向量数据库
# ===============================
# https://github.com/spring-projects/spring-ai/blob/main/spring-ai-vector-store/src/main/java/org/springframework/ai/vectorstore/SpringAIVectorStoreTypes.java
# spring.ai.vectorstore.type=none
# spring.ai.vectorstore.type=redis
# spring.ai.vectorstore.type=chroma
spring.ai.vectorstore.type=elasticsearch
# spring.ai.vectorstore.type=weaviate
# spring.ai.vectorstore.type=milvus
# spring.ai.vectorstore.type=pgvector
2025-01-15 16:14:14 +08:00
2025-04-24 23:07:49 +08:00
# elasticsearch
# 浏览器可视化插件管理 es-client: https://gitee.com/q2316367743/es-client
# 配置参数 https://docs.spring.io/spring-ai/reference/api/vectordbs/elasticsearch.html#elasticsearchvector-properties
spring.elasticsearch.uris=http://127.0.0.1:19200
spring.elasticsearch.username=elastic
spring.elasticsearch.password=bytedesk123
#
spring.ai.vectorstore.elasticsearch.enabled=true
spring.ai.vectorstore.elasticsearch.initialize-schema=true
spring.ai.vectorstore.elasticsearch.index-name=bytedesk_vs_index
2025-06-21 11:57:41 +08:00
spring.ai.vectorstore.elasticsearch.dimensions=1024
2025-04-24 23:07:49 +08:00
# cosine/l2_norm/dot_product
spring.ai.vectorstore.elasticsearch.similarity=cosine
# chroma
2025-10-14 16:46:38 +08:00
# spring.ai.vectorstore.chroma.enabled=false
# spring.ai.vectorstore.chroma.uri=http://127.0.0.1:18000
# spring.ai.vectorstore.chroma.collection-name=bytedesk_vs_collection
# spring.ai.vectorstore.chroma.distance-function=COSINE
# spring.ai.vectorstore.chroma.embedding-dimension=1024
2025-04-24 23:07:49 +08:00
2025-03-02 23:18:40 +08:00
# weaviate
2025-10-14 16:46:38 +08:00
# spring.ai.vectorstore.weaviate.enabled=false
# spring.ai.vectorstore.weaviate.host=127.0.0.1
# spring.ai.vectorstore.weaviate.port=18080
# spring.ai.vectorstore.weaviate.scheme=http
# spring.ai.vectorstore.weaviate.index-name=BytedeskVectors
# spring.ai.vectorstore.weaviate.text-field-name=content
2025-04-24 23:07:49 +08:00
# milvus
2025-10-14 16:46:38 +08:00
# spring.ai.vectorstore.milvus.enabled=false
# spring.ai.vectorstore.milvus.host=127.0.0.1
# spring.ai.vectorstore.milvus.port=19530
# spring.ai.vectorstore.milvus.collection-name=bytedesk_vectors
# spring.ai.vectorstore.milvus.vector-field=embedding
# spring.ai.vectorstore.milvus.text-field=content
# spring.ai.vectorstore.milvus.dimensions=1024
2025-03-26 22:14:23 +08:00
2025-03-02 23:18:40 +08:00
# ===============================
# = spring ai mcp
# https://contribute.liquibase.com/extensions-channels/directory/integration-docs/springboot/configuration/
# ===============================
# https://docs.spring.io/spring-ai/reference/api/mcp/mcp-client-boot-starter-docs.html
spring.ai.mcp.client.enabled=false
# logging.level.org.springframework.ai.mcp=WARN
# logging.level.org.springframework.ai.mcp.client.transport.StdioClientTransport=WARN
# logging.level.org.springframework.ai.mcp.samples.brave=INFO
# logging.level.io.modelcontextprotocol.client=WARN
# logging.level.io.modelcontextprotocol.spec=WARN
2025-06-21 11:57:41 +08:00
# mcp servers
# https://github.com/modelcontextprotocol/servers
2025-03-02 23:18:40 +08:00
# https://docs.spring.io/spring-ai/reference/api/mcp/mcp-server-boot-starter-docs.html
2025-06-21 11:57:41 +08:00
# https://github.com/spring-projects/spring-ai/blob/b29076f/auto-configurations/spring-ai-mcp-server/src/main/java/org/springframework/ai/autoconfigure/mcp/server/McpServerProperties.java
2025-03-02 23:18:40 +08:00
spring.ai.mcp.server.enable=false
2025-06-21 11:57:41 +08:00
# spring.ai.mcp.server.name=bytedesk-starter
# spring.ai.mcp.server.version=0.0.1
# SYNC or ASYNC
spring.ai.mcp.server.type=SYNC
# Transport configuration
spring.ai.mcp.server.stdio=false
# spring.ai.mcp.server.sse-message-endpoint=/mcp/message
# spring.ai.mcp.server.resource-change-notification=true
# spring.ai.mcp.server.tool-change-notification=true
# spring.ai.mcp.server.prompt-change-notification=true
# ===============================
# = Spring Batch Configuration
# ===============================
# 禁止启动时自动执行作业
spring.batch.job.enabled=false
# 始终初始化批处理表生产环境建议设置为never
spring.batch.jdbc.initialize-schema=never
# 表前缀默认是BATCH_
# spring.batch.jdbc.schema=classpath:org/springframework/batch/core/schema-mysql.sql
# spring.batch.jdbc.table-prefix=BD_BATCH_
2025-03-02 23:18:40 +08:00
2024-08-09 11:06:35 +08:00
#
# ===============================
# = liquibase
2024-10-07 08:03:15 +08:00
# https://contribute.liquibase.com/extensions-channels/directory/integration-docs/springboot/configuration/
2024-08-09 11:06:35 +08:00
# ===============================
spring.liquibase.enabled=true
spring.liquibase.change-log=classpath:db/changelog/master.xml
2025-03-02 23:18:40 +08:00
2025-02-15 08:54:10 +08:00
# ===============================
# = flowable
# https://www.flowable.com/open-source/docs/bpmn/ch05a-Spring-Boot
# ===============================
# 禁止自动部署流程文件
# flowable.check-process-definitions=false
# flowable.deployment-enabled=false
# 禁止CMMN自动部署
# flowable.cmmn.enabled=false
# flowable.cmmn.deployment-enabled=false
# 禁止DMN自动部署
# flowable.dmn.enabled=false
# flowable.dmn.deployment-enabled=false
# 禁止Form自动部署
# flowable.form.enabled=false
# flowable.form.deployment-enabled=false
# 禁止Content自动部署
# flowable.content.enabled=false
# flowable.content.deployment-enabled=false
# 禁止Event Registry自动部署
# flowable.eventregistry.enabled=false
# flowable.eventregistry.deployment-enabled=false
2025-04-14 10:46:19 +08:00
# ===============================
# = Flowable 日志配置
# ===============================
logging.level.org.flowable=WARN
logging.level.org.flowable.app=WARN
logging.level.org.flowable.engine=WARN
logging.level.org.flowable.cmmn=WARN
logging.level.org.flowable.dmn=WARN
logging.level.org.flowable.idm=WARN
logging.level.org.flowable.eventregistry=WARN
logging.level.org.flowable.common=WARN
2025-06-21 11:57:41 +08:00
# ===============================
# = 百度翻译
# https://fanyi-api.baidu.com/doc/21
# ===============================
bytedesk.translate.baidu.appid=placeholder
bytedesk.translate.baidu.key=placeholder
# 抖音开放平台
# https://developer.open-douyin.com/webapp/aw74cmav4symty7z/setting/app-info
# douyin.client.key=placeholder
# douyin.client.secret=placeholder
#
# ===============================
# = 阿里云OSS访问密钥 + 短信服务
# ===============================
aliyun.region.id=cn-hangzhou
# 获取阿里云密钥 https://ram.console.aliyun.com/profile/access-keys
aliyun.access.key.id=placeholder
aliyun.access.key.secret=placeholder
# 阿里云OSS服务相关配置
# OSS的endpoint,这里是华南地区(也就是深圳)
aliyun.oss.endpoint=https://oss-cn-shenzhen.aliyuncs.com
aliyun.oss.base.url=https://bytedesk.oss-cn-shenzhen.aliyuncs.com
# 这是创建的bucket
aliyun.oss.bucket.name=placeholder
# 这里已经把自己的域名映射到bucket地址了。需要设置域名绑定设置域名CNAME暂不使用
aliyun.oss.img.domain=placeholder
# 阿里云短信服务
# 短信签名 https://dysms.console.aliyun.com/domestic/text/sign
aliyun.sms.signname=微语
# 短信模板管理 https://dysms.console.aliyun.com/domestic/text/template
aliyun.sms.templatecode=SMS_xxxxxxxxx
#
# ===============================
# = 腾讯云COS对象存储访问密钥
# ===============================
# 创建bucket并需要在此bucket下创建文件夹apns/development(二级文件夹), apns/production(二级文件夹), avatars, images, voices, files
# 储桶所属地域
tencent.bucket.location=ap-shanghai
# 存储桶名称
tencent.bucket.name=
# 访问域名
tencent.bucket.domain=
#API密钥管理获取
tencent.appid=
tencent.secretid=
tencent.secretkey=
# ===============================
# = 微信支付
# ===============================
2025-07-18 17:45:50 +08:00
bytedesk.wechat.pay.enabled=false
bytedesk.wechat.pay.certpath=''
bytedesk.wechat.pay.appid=
bytedesk.wechat.pay.mch_id=
bytedesk.wechat.pay.key=
bytedesk.wechat.pay.notify_url=
2025-06-21 11:57:41 +08:00
2024-08-09 11:06:35 +08:00
# ===============================
# = docker compose
2025-04-24 23:07:49 +08:00
# 可以 cd 到 starter/src/main/resources 目录下,事先启动容器,然后启动项目,或者直接启动项目,项目会自动启动容器(但会等待容器启动完成)
# 启动容器中依赖docker compose -p bytedesk -f compose.yaml up -d
# 停止容器中依赖docker compose -p bytedesk -f compose.yaml down
2024-11-24 21:47:13 +08:00
#= 跟模块 spring-boot-docker-compose 配合使用
# https://spring.io/guides/topicals/spring-boot-docker
# https://spring.io/blog/2023/06/21/docker-compose-support-in-spring-boot-3-1
# https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-docker-compose
# https://hub.docker.com/r/jackning/bytedesk
# https://springdoc.cn/docker-compose-support-spring-boot/
# https://docs.spring.io/spring-boot/docs/3.2.0/reference/htmlsingle/#features.docker-compose
2024-08-09 11:06:35 +08:00
# ===============================
2025-04-24 23:07:49 +08:00
# true 表示启用 docker compose
# false 表示禁用 docker compose
2024-08-09 11:06:35 +08:00
spring.docker.compose.enabled=false
2025-04-24 23:07:49 +08:00
# 指定 docker compose 文件路径路径starter/src/main/resources
spring.docker.compose.file=classpath:compose.yaml
# 设置Docker Compose项目名称相当于命令行中的 -p 参数
spring.docker.compose.project-name=bytedesk