| yudao-server/src/main/resources/application-bfkj.yaml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| yudao-server/src/main/resources/application-cqny.yaml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| yudao-server/src/main/resources/application-lyzy.yaml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| yudao-server/src/main/resources/application-xhxcl.yaml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| yudao-server/src/main/resources/application-zyzp.yaml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
yudao-server/src/main/resources/application-bfkj.yaml
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,237 @@ server: port: 48080 --- #################### æ°æ®åºç¸å ³é ç½® #################### spring: autoconfigure: # noinspection SpringBootApplicationYaml exclude: - org.springframework.boot.autoconfigure.quartz.QuartzAutoConfiguration # é»è®¤ local ç¯å¢ï¼ä¸å¼å¯ Quartz çèªå¨é ç½® - org.springframework.ai.vectorstore.qdrant.autoconfigure.QdrantVectorStoreAutoConfiguration # ç¦ç¨ AI 模åç Qdrantï¼æå¨å建 - org.springframework.ai.vectorstore.redis.autoconfigure.RedisVectorStoreAutoConfiguration # ç¦ç¨ AI 模åç Redisï¼æå¨å建 - org.springframework.ai.vectorstore.milvus.autoconfigure.MilvusVectorStoreAutoConfiguration # ç¦ç¨ AI 模åç Milvusï¼æå¨å建 - org.dromara.trans.config.TransServiceConfig # TODO èè¿ï¼easy-trans å ¼å®¹ Spring Boot 4 åç§»é¤ï¼TransServiceConfig å¼ç¨äºå·²ç§»é¤ç RestTemplateBuilderï¼ # ç¦ç¨æªé ç½® API Key çæ¨¡åèªå¨é ç½®ï¼åªä¿çéä¹åé® Embedding çæå¨é ç½®ï¼ - org.springframework.ai.model.openai.autoconfigure.OpenAiChatAutoConfiguration - org.springframework.ai.model.openai.autoconfigure.OpenAiEmbeddingAutoConfiguration - org.springframework.ai.model.openai.autoconfigure.OpenAiImageAutoConfiguration - org.springframework.ai.model.openai.autoconfigure.OpenAiAudioSpeechAutoConfiguration - org.springframework.ai.model.openai.autoconfigure.OpenAiAudioTranscriptionAutoConfiguration - org.springframework.ai.model.openai.autoconfigure.OpenAiModerationAutoConfiguration - org.springframework.ai.model.deepseek.autoconfigure.DeepSeekChatAutoConfiguration - org.springframework.ai.model.anthropic.autoconfigure.AnthropicChatAutoConfiguration - org.springframework.ai.model.google.genai.autoconfigure.chat.GoogleGenAiChatAutoConfiguration - org.springframework.ai.model.google.genai.autoconfigure.embedding.GoogleGenAiEmbeddingConnectionAutoConfiguration - org.springframework.ai.model.google.genai.autoconfigure.embedding.GoogleGenAiTextEmbeddingAutoConfiguration - org.springframework.ai.model.ollama.autoconfigure.OllamaApiAutoConfiguration - org.springframework.ai.model.ollama.autoconfigure.OllamaChatAutoConfiguration - org.springframework.ai.model.ollama.autoconfigure.OllamaEmbeddingAutoConfiguration - org.springframework.ai.model.stabilityai.autoconfigure.StabilityAiImageAutoConfiguration # æ°æ®æºé 置项 datasource: druid: # Druid ãçæ§ãç¸å ³çå ¨å±é ç½® web-stat-filter: enabled: true stat-view-servlet: enabled: true allow: # 设置ç½ååï¼ä¸å¡«åå 许ææè®¿é® url-pattern: /druid/* login-username: # æ§å¶å°ç®¡çç¨æ·ååå¯ç login-password: filter: stat: enabled: true log-slow-sql: true # æ ¢ SQL è®°å½ slow-sql-millis: 100 merge-sql: true wall: config: multi-statement-allow: true dynamic: # 夿°æ®æºé ç½® druid: # Druid ãè¿æ¥æ± ãç¸å ³çå ¨å±é ç½® initial-size: 1 # åå§è¿æ¥æ° min-idle: 1 # æå°è¿æ¥æ± æ°é max-active: 20 # æå¤§è¿æ¥æ± æ°é max-wait: 60000 # é ç½®è·åè¿æ¥çå¾ è¶ æ¶çæ¶é´ï¼åä½ï¼æ¯«ç§ï¼1 åéï¼ time-between-eviction-runs-millis: 60000 # é ç½®é´éå¤ä¹ æè¿è¡ä¸æ¬¡æ£æµï¼æ£æµéè¦å ³éç空é²è¿æ¥ï¼åä½ï¼æ¯«ç§ï¼1 åéï¼ min-evictable-idle-time-millis: 600000 # é ç½®ä¸ä¸ªè¿æ¥å¨æ± 䏿å°çåçæ¶é´ï¼åä½ï¼æ¯«ç§ï¼10 åéï¼ max-evictable-idle-time-millis: 1800000 # é ç½®ä¸ä¸ªè¿æ¥å¨æ± 䏿大çåçæ¶é´ï¼åä½ï¼æ¯«ç§ï¼30 åéï¼ validation-query: SELECT 1 FROM DUAL # é ç½®æ£æµè¿æ¥æ¯å¦ææ test-while-idle: true test-on-borrow: false test-on-return: false pool-prepared-statements: true # æ¯å¦å¼å¯ PreparedStatement ç¼å max-pool-prepared-statement-per-connection-size: 20 # æ¯ä¸ªè¿æ¥ç¼åç PreparedStatement æ°é primary: master datasource: master: url: jdbc:mysql://172.17.0.1:10000/mom-bfkj?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true&rewriteBatchedStatements=true # MySQL Connector/J 8.X è¿æ¥çç¤ºä¾ username: root password: xd@123456.. # Redis é ç½®ãRedisson é»è®¤çé 置足å¤ä½¿ç¨ï¼ä¸è¬ä¸éè¦è¿è¡è°ä¼ data: redis: host: 172.17.0.1 # å°å port: 9999 # ç«¯å£ database: 14 # æ°æ®åºç´¢å¼ # password: dev # å¯ç ï¼å»ºè®®ç产ç¯å¢å¼å¯ --- #################### 宿¶ä»»å¡ç¸å ³é ç½® #################### # Quartz é 置项ï¼å¯¹åº QuartzProperties é 置类 spring: quartz: auto-startup: true # æ¬å°å¼åç¯å¢ï¼å°½éä¸è¦å¼å¯ Job scheduler-name: schedulerName # Scheduler ååãé»è®¤ä¸º schedulerName job-store-type: jdbc # Job åå¨å¨ç±»åãé»è®¤ä¸º memory 表示å åï¼å¯é jdbc ä½¿ç¨æ°æ®åºã wait-for-jobs-to-complete-on-shutdown: true # åºç¨å ³éæ¶ï¼æ¯å¦çå¾ å®æ¶ä»»å¡æ§è¡å®æãé»è®¤ä¸º false ï¼å»ºè®®è®¾ç½®ä¸º true properties: # æ·»å Quartz Scheduler éå 屿§ï¼æ´å¤å¯ä»¥ç http://www.quartz-scheduler.org/documentation/2.4.0-SNAPSHOT/configuration.html ææ¡£ org: quartz: # Scheduler ç¸å ³é ç½® scheduler: instanceName: schedulerName instanceId: AUTO # èªå¨çæ instance ID # JobStore ç¸å ³é ç½® jobStore: # JobStore å®ç°ç±»ãå¯è§å客ï¼https://blog.csdn.net/weixin_42458219/article/details/122247162 class: org.springframework.scheduling.quartz.LocalDataSourceJobStore isClustered: true # æ¯éç¾¤æ¨¡å¼ clusterCheckinInterval: 15000 # éç¾¤æ£æ¥é¢çï¼åä½ï¼æ¯«ç§ãé»è®¤ä¸º 15000ï¼å³ 15 ç§ misfireThreshold: 60000 # misfire éå¼ï¼åä½ï¼æ¯«ç§ã # çº¿ç¨æ± ç¸å ³é ç½® threadPool: threadCount: 25 # çº¿ç¨æ± 大å°ãé»è®¤ä¸º 10 ã threadPriority: 5 # 线ç¨ä¼å 级 class: org.quartz.simpl.SimpleThreadPool # çº¿ç¨æ± ç±»å jdbc: # ä½¿ç¨ JDBC ç JobStore çæ¶åï¼JDBC çé ç½® initialize-schema: NEVER # æ¯å¦èªå¨ä½¿ç¨ SQL åå§å Quartz è¡¨ç»æãè¿é设置æ never ï¼æä»¬æå¨åå»ºè¡¨ç»æã --- #################### æå¡ä¿éç¸å ³é ç½® #################### # Lock4j é 置项 lock4j: acquire-timeout: 3000 # è·ååå¸å¼éè¶ æ¶æ¶é´ï¼é»è®¤ä¸º 3000 æ¯«ç§ expire: 30000 # åå¸å¼éçè¶ æ¶æ¶é´ï¼é»è®¤ä¸º 30000 æ¯«ç§ --- #################### çæ§ç¸å ³é ç½® #################### # Actuator çæ§ç«¯ç¹çé 置项 management: endpoints: web: base-path: /actuator # Actuator æä¾ç API æ¥å£çæ ¹ç®å½ãé»è®¤ä¸º /actuator exposure: include: '*' # éè¦å¼æ¾ç端ç¹ãé»è®¤å¼åªæå¼ health å info 两个端ç¹ãéè¿è®¾ç½® * ï¼å¯ä»¥å¼æ¾ææç«¯ç¹ã # Spring Boot Admin é 置项 spring: boot: admin: # Spring Boot Admin Client 客æ·ç«¯çç¸å ³é ç½® client: url: http://127.0.0.1:${server.port}/${spring.boot.admin.context-path} # 设置 Spring Boot Admin Server å°å instance: service-host-type: IP # 注åå®ä¾æ¶ï¼ä¼å ä½¿ç¨ IP [IP, HOST_NAME, CANONICAL_HOST_NAME] username: admin password: admin # Spring Boot Admin Server æå¡ç«¯çç¸å ³é ç½® context-path: /admin # é ç½® Spring # å 许åµå ¥ iframe çååï¼æ¯æéé 符ï¼ï¼å®é é¨ç½²æ¶ï¼å¯ä»¥æ¹ä¸º "'self' [ä½ çå ¬ç½åå]" frame-ancestors: "'self' localhost localhost:48080 127.0.0.1 127.0.0.1:48080" # æ¥å¿æä»¶é ç½® logging: file: name: logs/${spring.application.name}.log # æ¥å¿æä»¶åï¼ç¸å¯¹äºé¡¹ç®æ ¹ç®å½ level: # é ç½®èªå·±åç MyBatis Mapper æå°æ¥å¿ cn.iocoder.yudao.module.bpm.dal.mysql: debug cn.iocoder.yudao.module.infra.dal.mysql: debug cn.iocoder.yudao.module.infra.dal.mysql.logger.ApiErrorLogMapper: INFO # é ç½® ApiErrorLogMapper çæ¥å¿çº§å«ä¸º infoï¼é¿å å GlobalExceptionHandler éå¤æå° cn.iocoder.yudao.module.infra.dal.mysql.job.JobLogMapper: INFO # é ç½® JobLogMapper çæ¥å¿çº§å«ä¸º info cn.iocoder.yudao.module.infra.dal.mysql.file.FileConfigMapper: INFO # é ç½® FileConfigMapper çæ¥å¿çº§å«ä¸º info cn.iocoder.yudao.module.system.dal.mysql: debug cn.iocoder.yudao.module.system.dal.mysql.sms.SmsChannelMapper: INFO # é ç½® SmsChannelMapper çæ¥å¿çº§å«ä¸º info cn.iocoder.yudao.module.member.dal.mysql: debug cn.iocoder.yudao.module.crm.dal.mysql: debug cn.iocoder.yudao.module.erp.dal.mysql: debug cn.iocoder.yudao.module.mes.dal.mysql: debug cn.iocoder.yudao.module.ai.dal.mysql: debug cn.iocoder.yudao.module.im.dal.mysql: debug org.springframework.context.support.PostProcessorRegistrationDelegate: ERROR # TODO èè¿ï¼å ç¦ç¨ï¼Spring Boot 3.X åå¨é¨åé误ç WARN æç¤º debug: false yudao: ai: timeout: 60s # 忬¡å¤§æ¨¡åè°ç¨è¶ æ¶ï¼ä¸è®¾çè¯æ¨¡åæéæ¶è¯·æ±ä¼ä¸ç´æèµ· vector-store: type: milvus # åéåºç±»åï¼milvus milvus: initialize-schema: true database-name: test collection-name: knowledge_segment_bfkj host: 36.213.90.123 port: 19530 --- #################### è¶ çº§ç®¡çåç¸å ³é ç½® #################### # è¶ çº§ç®¡çåé 置项ï¼è®¾ç½®å½åé¡¹ç®ææèªå®ä¹çé ç½® yudao: captcha: enable: false # æ¬å°ç¯å¢ï¼ææ¶å ³éå¾çéªè¯ç ï¼æ¹ä¾¿ç»å½çæ¥å£çæµè¯ï¼ security: mock-enable: true access-log: # è®¿é®æ¥å¿çé 置项 enable: false demo: false # å ³éæ¼ç¤ºæ¨¡å¼ storage: # æä»¶ä¸ä¼ é ç½® path: /data/javaWork/mom/file # æä»¶å卿 ¹ç®å½ url-prefix: /admin-api/system/storage-blob # URLè·¯å¾åç¼ domain: http://36.213.150.237:9026 # åååç¼ï¼æå®é ååé ç½®ï¼ï¼å端é 置好åä¸å¤ªå¯¹ç°å¨æ¯ç´è¿åç«¯ï¼ææè¦åç«¯ç«¯å£ expired: 120 # tokenè¿ææ¶é´ï¼åéï¼ use-limit: 10 # tokenä½¿ç¨æ¬¡æ°ä¸é jwt-secret: abcdefghijklmnopqrstuvwxyz0123456789ABCDEFG # JWTå¯é¥ compress: true # æ¯å¦å缩å¾ç need-compress-size: 10MB # 触åå缩çæä»¶å¤§å°éå¼ compress-quality: 0.5 # å缩质é(0.0-1.0) qcreport: # æºè½è´¨æ£æ¥å pdf: # PDF åºä»¶ï¼æå¡ç«¯è° Chromium ææ¥å HTML æå°æ PDF # é¨ç½²åç½®ï¼å®¹å¨å ï¼è§ç产 Dockerfile ç USER rootï¼ï¼ # 1) æµè§å¨ï¼å¤é¶æ®µæå»ºä» mcr.microsoft.com/playwright:v1.63.0-jammy é # COPY --from ååº /ms-playwright ä¸ç chromiumï¼è¯¥éååºåº§æ¯ Ubuntu 22.04/glibc 2.35ï¼ # ä¸è¿è¡éåä¸è´ï¼ãPlaywright ä¸ä¼æ¿ä½ ä¸è½½æµè§å¨ï¼è£ å¨å®¿ä¸»æºä¹æ²¡ç¨ï¼å¿ é¡»è¿éåï¼ # æå»ºæ«å°¾æå®è½¯é¾å° /usr/local/bin/chromiumï¼å¹¶ç¨ --version + ldd èªæ£ï¼ # è£ å¤±è´¥å°±ç´æ¥ä¸ææå»ºï¼ä¸æå°ç¨æ·ç¹å¯¼åºææ´é² # 2) 䏿åä½ï¼æ¥åæ£ææ¯ä¸æï¼ç¼º CJK åä½ä¼æææ¹æ¡ï¼éè£ fonts-wqy-zenhei / Noto Sans CJK # 3) 以 root è¿è¡ï¼Chromium ä¸å --no-sandbox ä¼ç´æ¥æç»å¯å¨ï¼å®¹å¨ /dev/shm é»è®¤ä» 64Mï¼ # è¿é --disable-dev-shm-usageï¼å¦å渲æå¤§æ¥åæ¶ä¼éæºå´© enabled: true # å ³æåå¯¼åºæ¥å£ä¼æç¡®æ¥ãæªå¯ç¨ãï¼è䏿¯æ 500 channel: '' # çç©ºï¼æ¹ç±ä¸é¢ç executable-path æå®éåå ç chromium executable-path: /usr/local/bin/chromium # éåå chromium çåºå®ä½ç½®ï¼ç± Dockerfile 建软é¾ä¿è¯ concurrency: 2 # åæ¶è¿è¡ç PDF 渲æä¸éï¼Chromium å¾åå åï¼ä¸è¦æ¾å¼ timeout-ms: 30000 # 忬¡æ¸²æè¶ æ¶ï¼æ¯«ç§ï¼ï¼åæ¶ä¹æ¯æéçå¹¶ååé¢çä¸é show-page-number: true # 页èæå°ã第 N 页 / å ± M 页ã browser-args: [ '--no-sandbox', '--disable-dev-shm-usage' ] # 容å¨å 以 root è¿è¡å¿ éï¼ä¸¤é¡¹é½ä¸è½å»æ ai-import: # AI å¯¼å ¥ï¼ä¸ä¼ æ¢ææ¥åæä»¶ï¼è¯å«ææ¨¡æ¿è稿 # é¨ç½²åç½®ï¼åºç¨æå¡å¨éè½åºç½è®¿é® DashScopeï¼éä¹åé®ï¼ãå ç½é¨ç½²è¯·æ enabled ç½® falseï¼ # æ¥å£ä¼æç¡®æ¥ãæªå¯ç¨ãè䏿¯ä¸ç´çå° AI è¶ æ¶ãæ¤å¤è¿éå¨ãAI 大模åãéé å¥½å¯¹è¯æ¨¡åä¸å¯é¥ã enabled: true max-files: 3 # 䏿¬¡æå¤å 个æä»¶ max-pages-per-file: 5 # åæä»¶é¡µæ°ä¸éï¼è¶ åºæ¥éè䏿¯é黿ªæ max-pages-per-request: 8 # 䏿¬¡è¯·æ±ç´¯è®¡é¡µæ°ä¸éï¼å¤æä»¶å å åçæ»é¸ï¼ max-duration-seconds: 180 # 䏿¬¡å¯¼å ¥æ»èæ¶ä¸éï¼ä¸¤æ¬¡è°ç¨ä¹é´æ£æ¥ï¼ï¼åç«¯è¶ æ¶é¡»æ¯å®å ä¸ yudao.ai.timeout æ´å®½ max-file-size-mb: 20 # åæä»¶å¤§å°ä¸é max-components: 200 # è¯å«åºçç»ä»¶æ»æ°ä¸éï¼è¶ åºæªæå¹¶å¨æç¤ºé说æ pdf-text-page-threshold: 30 # 平忝页å符æ°ä½äºæ¤å¼å³ææ«æä»¶é页转å¾è¯å« render-dpi: 200 # æ«æé¡µè½¬å¾ç DPIï¼ä½äº 200 䏿åå½¢ä¼ç³ max-xlsx-rows: 300 # Excel å表æå¤è¯»åçè¡æ° database-backup: # æ°æ®åºå¤ä»½é ç½® host: 172.17.0.1 # å¤ä»½ç®æ MySQL 主æºï¼ç空èªå¨ä»æ°æ®æº JDBC URL è§£æ port: 9002 # å¤ä»½ç®æ MySQL 端å£ï¼ç空èªå¨ä»æ°æ®æº JDBC URL è§£æ database: mom-bfkj # å¤ä»½ç®æ æ°æ®åºï¼ç空èªå¨ä»æ°æ®æº JDBC URL è§£æ username: root # å¤ä»½è´¦å·ï¼çç©ºä½¿ç¨æ°æ®æºè´¦å· password: 'xd@123456..' # å¤ä»½å¯ç ï¼çç©ºä½¿ç¨æ°æ®æºå¯ç command: # mysqldump å½ä»¤ï¼ç空èªå¨æ£æµé¨ç½²ç¯å¢ï¼æ¬æº mysqldump æ Docker MySQL 容å¨ï¼ï¼å¯æå¨æå®ï¼å¦ï¼docker exec mysql8 mysqldump yudao-server/src/main/resources/application-cqny.yaml
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,237 @@ server: port: 48080 --- #################### æ°æ®åºç¸å ³é ç½® #################### spring: autoconfigure: # noinspection SpringBootApplicationYaml exclude: - org.springframework.boot.autoconfigure.quartz.QuartzAutoConfiguration # é»è®¤ local ç¯å¢ï¼ä¸å¼å¯ Quartz çèªå¨é ç½® - org.springframework.ai.vectorstore.qdrant.autoconfigure.QdrantVectorStoreAutoConfiguration # ç¦ç¨ AI 模åç Qdrantï¼æå¨å建 - org.springframework.ai.vectorstore.redis.autoconfigure.RedisVectorStoreAutoConfiguration # ç¦ç¨ AI 模åç Redisï¼æå¨å建 - org.springframework.ai.vectorstore.milvus.autoconfigure.MilvusVectorStoreAutoConfiguration # ç¦ç¨ AI 模åç Milvusï¼æå¨å建 - org.dromara.trans.config.TransServiceConfig # TODO èè¿ï¼easy-trans å ¼å®¹ Spring Boot 4 åç§»é¤ï¼TransServiceConfig å¼ç¨äºå·²ç§»é¤ç RestTemplateBuilderï¼ # ç¦ç¨æªé ç½® API Key çæ¨¡åèªå¨é ç½®ï¼åªä¿çéä¹åé® Embedding çæå¨é ç½®ï¼ - org.springframework.ai.model.openai.autoconfigure.OpenAiChatAutoConfiguration - org.springframework.ai.model.openai.autoconfigure.OpenAiEmbeddingAutoConfiguration - org.springframework.ai.model.openai.autoconfigure.OpenAiImageAutoConfiguration - org.springframework.ai.model.openai.autoconfigure.OpenAiAudioSpeechAutoConfiguration - org.springframework.ai.model.openai.autoconfigure.OpenAiAudioTranscriptionAutoConfiguration - org.springframework.ai.model.openai.autoconfigure.OpenAiModerationAutoConfiguration - org.springframework.ai.model.deepseek.autoconfigure.DeepSeekChatAutoConfiguration - org.springframework.ai.model.anthropic.autoconfigure.AnthropicChatAutoConfiguration - org.springframework.ai.model.google.genai.autoconfigure.chat.GoogleGenAiChatAutoConfiguration - org.springframework.ai.model.google.genai.autoconfigure.embedding.GoogleGenAiEmbeddingConnectionAutoConfiguration - org.springframework.ai.model.google.genai.autoconfigure.embedding.GoogleGenAiTextEmbeddingAutoConfiguration - org.springframework.ai.model.ollama.autoconfigure.OllamaApiAutoConfiguration - org.springframework.ai.model.ollama.autoconfigure.OllamaChatAutoConfiguration - org.springframework.ai.model.ollama.autoconfigure.OllamaEmbeddingAutoConfiguration - org.springframework.ai.model.stabilityai.autoconfigure.StabilityAiImageAutoConfiguration # æ°æ®æºé 置项 datasource: druid: # Druid ãçæ§ãç¸å ³çå ¨å±é ç½® web-stat-filter: enabled: true stat-view-servlet: enabled: true allow: # 设置ç½ååï¼ä¸å¡«åå 许ææè®¿é® url-pattern: /druid/* login-username: # æ§å¶å°ç®¡çç¨æ·ååå¯ç login-password: filter: stat: enabled: true log-slow-sql: true # æ ¢ SQL è®°å½ slow-sql-millis: 100 merge-sql: true wall: config: multi-statement-allow: true dynamic: # 夿°æ®æºé ç½® druid: # Druid ãè¿æ¥æ± ãç¸å ³çå ¨å±é ç½® initial-size: 1 # åå§è¿æ¥æ° min-idle: 1 # æå°è¿æ¥æ± æ°é max-active: 20 # æå¤§è¿æ¥æ± æ°é max-wait: 60000 # é ç½®è·åè¿æ¥çå¾ è¶ æ¶çæ¶é´ï¼åä½ï¼æ¯«ç§ï¼1 åéï¼ time-between-eviction-runs-millis: 60000 # é ç½®é´éå¤ä¹ æè¿è¡ä¸æ¬¡æ£æµï¼æ£æµéè¦å ³éç空é²è¿æ¥ï¼åä½ï¼æ¯«ç§ï¼1 åéï¼ min-evictable-idle-time-millis: 600000 # é ç½®ä¸ä¸ªè¿æ¥å¨æ± 䏿å°çåçæ¶é´ï¼åä½ï¼æ¯«ç§ï¼10 åéï¼ max-evictable-idle-time-millis: 1800000 # é ç½®ä¸ä¸ªè¿æ¥å¨æ± 䏿大çåçæ¶é´ï¼åä½ï¼æ¯«ç§ï¼30 åéï¼ validation-query: SELECT 1 FROM DUAL # é ç½®æ£æµè¿æ¥æ¯å¦ææ test-while-idle: true test-on-borrow: false test-on-return: false pool-prepared-statements: true # æ¯å¦å¼å¯ PreparedStatement ç¼å max-pool-prepared-statement-per-connection-size: 20 # æ¯ä¸ªè¿æ¥ç¼åç PreparedStatement æ°é primary: master datasource: master: url: jdbc:mysql://172.17.0.1:10000/mom-cqny?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true&rewriteBatchedStatements=true # MySQL Connector/J 8.X è¿æ¥çç¤ºä¾ username: root password: xd@123456.. # Redis é ç½®ãRedisson é»è®¤çé 置足å¤ä½¿ç¨ï¼ä¸è¬ä¸éè¦è¿è¡è°ä¼ data: redis: host: 172.17.0.1 # å°å port: 9999 # ç«¯å£ database: 8 # æ°æ®åºç´¢å¼ # password: dev # å¯ç ï¼å»ºè®®ç产ç¯å¢å¼å¯ --- #################### 宿¶ä»»å¡ç¸å ³é ç½® #################### # Quartz é 置项ï¼å¯¹åº QuartzProperties é 置类 spring: quartz: auto-startup: true # æ¬å°å¼åç¯å¢ï¼å°½éä¸è¦å¼å¯ Job scheduler-name: schedulerName # Scheduler ååãé»è®¤ä¸º schedulerName job-store-type: jdbc # Job åå¨å¨ç±»åãé»è®¤ä¸º memory 表示å åï¼å¯é jdbc ä½¿ç¨æ°æ®åºã wait-for-jobs-to-complete-on-shutdown: true # åºç¨å ³éæ¶ï¼æ¯å¦çå¾ å®æ¶ä»»å¡æ§è¡å®æãé»è®¤ä¸º false ï¼å»ºè®®è®¾ç½®ä¸º true properties: # æ·»å Quartz Scheduler éå 屿§ï¼æ´å¤å¯ä»¥ç http://www.quartz-scheduler.org/documentation/2.4.0-SNAPSHOT/configuration.html ææ¡£ org: quartz: # Scheduler ç¸å ³é ç½® scheduler: instanceName: schedulerName instanceId: AUTO # èªå¨çæ instance ID # JobStore ç¸å ³é ç½® jobStore: # JobStore å®ç°ç±»ãå¯è§å客ï¼https://blog.csdn.net/weixin_42458219/article/details/122247162 class: org.springframework.scheduling.quartz.LocalDataSourceJobStore isClustered: true # æ¯éç¾¤æ¨¡å¼ clusterCheckinInterval: 15000 # éç¾¤æ£æ¥é¢çï¼åä½ï¼æ¯«ç§ãé»è®¤ä¸º 15000ï¼å³ 15 ç§ misfireThreshold: 60000 # misfire éå¼ï¼åä½ï¼æ¯«ç§ã # çº¿ç¨æ± ç¸å ³é ç½® threadPool: threadCount: 25 # çº¿ç¨æ± 大å°ãé»è®¤ä¸º 10 ã threadPriority: 5 # 线ç¨ä¼å 级 class: org.quartz.simpl.SimpleThreadPool # çº¿ç¨æ± ç±»å jdbc: # ä½¿ç¨ JDBC ç JobStore çæ¶åï¼JDBC çé ç½® initialize-schema: NEVER # æ¯å¦èªå¨ä½¿ç¨ SQL åå§å Quartz è¡¨ç»æãè¿é设置æ never ï¼æä»¬æå¨åå»ºè¡¨ç»æã --- #################### æå¡ä¿éç¸å ³é ç½® #################### # Lock4j é 置项 lock4j: acquire-timeout: 3000 # è·ååå¸å¼éè¶ æ¶æ¶é´ï¼é»è®¤ä¸º 3000 æ¯«ç§ expire: 30000 # åå¸å¼éçè¶ æ¶æ¶é´ï¼é»è®¤ä¸º 30000 æ¯«ç§ --- #################### çæ§ç¸å ³é ç½® #################### # Actuator çæ§ç«¯ç¹çé 置项 management: endpoints: web: base-path: /actuator # Actuator æä¾ç API æ¥å£çæ ¹ç®å½ãé»è®¤ä¸º /actuator exposure: include: '*' # éè¦å¼æ¾ç端ç¹ãé»è®¤å¼åªæå¼ health å info 两个端ç¹ãéè¿è®¾ç½® * ï¼å¯ä»¥å¼æ¾ææç«¯ç¹ã # Spring Boot Admin é 置项 spring: boot: admin: # Spring Boot Admin Client 客æ·ç«¯çç¸å ³é ç½® client: url: http://127.0.0.1:${server.port}/${spring.boot.admin.context-path} # 设置 Spring Boot Admin Server å°å instance: service-host-type: IP # 注åå®ä¾æ¶ï¼ä¼å ä½¿ç¨ IP [IP, HOST_NAME, CANONICAL_HOST_NAME] username: admin password: admin # Spring Boot Admin Server æå¡ç«¯çç¸å ³é ç½® context-path: /admin # é ç½® Spring # å 许åµå ¥ iframe çååï¼æ¯æéé 符ï¼ï¼å®é é¨ç½²æ¶ï¼å¯ä»¥æ¹ä¸º "'self' [ä½ çå ¬ç½åå]" frame-ancestors: "'self' localhost localhost:48080 127.0.0.1 127.0.0.1:48080" # æ¥å¿æä»¶é ç½® logging: file: name: logs/${spring.application.name}.log # æ¥å¿æä»¶åï¼ç¸å¯¹äºé¡¹ç®æ ¹ç®å½ level: # é ç½®èªå·±åç MyBatis Mapper æå°æ¥å¿ cn.iocoder.yudao.module.bpm.dal.mysql: debug cn.iocoder.yudao.module.infra.dal.mysql: debug cn.iocoder.yudao.module.infra.dal.mysql.logger.ApiErrorLogMapper: INFO # é ç½® ApiErrorLogMapper çæ¥å¿çº§å«ä¸º infoï¼é¿å å GlobalExceptionHandler éå¤æå° cn.iocoder.yudao.module.infra.dal.mysql.job.JobLogMapper: INFO # é ç½® JobLogMapper çæ¥å¿çº§å«ä¸º info cn.iocoder.yudao.module.infra.dal.mysql.file.FileConfigMapper: INFO # é ç½® FileConfigMapper çæ¥å¿çº§å«ä¸º info cn.iocoder.yudao.module.system.dal.mysql: debug cn.iocoder.yudao.module.system.dal.mysql.sms.SmsChannelMapper: INFO # é ç½® SmsChannelMapper çæ¥å¿çº§å«ä¸º info cn.iocoder.yudao.module.member.dal.mysql: debug cn.iocoder.yudao.module.crm.dal.mysql: debug cn.iocoder.yudao.module.erp.dal.mysql: debug cn.iocoder.yudao.module.mes.dal.mysql: debug cn.iocoder.yudao.module.ai.dal.mysql: debug cn.iocoder.yudao.module.im.dal.mysql: debug org.springframework.context.support.PostProcessorRegistrationDelegate: ERROR # TODO èè¿ï¼å ç¦ç¨ï¼Spring Boot 3.X åå¨é¨åé误ç WARN æç¤º debug: false yudao: ai: timeout: 60s # 忬¡å¤§æ¨¡åè°ç¨è¶ æ¶ï¼ä¸è®¾çè¯æ¨¡åæéæ¶è¯·æ±ä¼ä¸ç´æèµ· vector-store: type: milvus # åéåºç±»åï¼milvus milvus: initialize-schema: true database-name: test collection-name: knowledge_segment_cqny host: 36.213.90.123 port: 19530 --- #################### è¶ çº§ç®¡çåç¸å ³é ç½® #################### # è¶ çº§ç®¡çåé 置项ï¼è®¾ç½®å½åé¡¹ç®ææèªå®ä¹çé ç½® yudao: captcha: enable: false # æ¬å°ç¯å¢ï¼ææ¶å ³éå¾çéªè¯ç ï¼æ¹ä¾¿ç»å½çæ¥å£çæµè¯ï¼ security: mock-enable: true access-log: # è®¿é®æ¥å¿çé 置项 enable: false demo: false # å ³éæ¼ç¤ºæ¨¡å¼ storage: # æä»¶ä¸ä¼ é ç½® path: /data/javaWork/mom/file # æä»¶å卿 ¹ç®å½ url-prefix: /admin-api/system/storage-blob # URLè·¯å¾åç¼ domain: http://36.213.150.237:9018 # åååç¼ï¼æå®é ååé ç½®ï¼ï¼å端é 置好åä¸å¤ªå¯¹ç°å¨æ¯ç´è¿åç«¯ï¼ææè¦åç«¯ç«¯å£ expired: 120 # tokenè¿ææ¶é´ï¼åéï¼ use-limit: 10 # tokenä½¿ç¨æ¬¡æ°ä¸é jwt-secret: abcdefghijklmnopqrstuvwxyz0123456789ABCDEFG # JWTå¯é¥ compress: true # æ¯å¦å缩å¾ç need-compress-size: 10MB # 触åå缩çæä»¶å¤§å°éå¼ compress-quality: 0.5 # å缩质é(0.0-1.0) qcreport: # æºè½è´¨æ£æ¥å pdf: # PDF åºä»¶ï¼æå¡ç«¯è° Chromium ææ¥å HTML æå°æ PDF # é¨ç½²åç½®ï¼å®¹å¨å ï¼è§ç产 Dockerfile ç USER rootï¼ï¼ # 1) æµè§å¨ï¼å¤é¶æ®µæå»ºä» mcr.microsoft.com/playwright:v1.63.0-jammy é # COPY --from ååº /ms-playwright ä¸ç chromiumï¼è¯¥éååºåº§æ¯ Ubuntu 22.04/glibc 2.35ï¼ # ä¸è¿è¡éåä¸è´ï¼ãPlaywright ä¸ä¼æ¿ä½ ä¸è½½æµè§å¨ï¼è£ å¨å®¿ä¸»æºä¹æ²¡ç¨ï¼å¿ é¡»è¿éåï¼ # æå»ºæ«å°¾æå®è½¯é¾å° /usr/local/bin/chromiumï¼å¹¶ç¨ --version + ldd èªæ£ï¼ # è£ å¤±è´¥å°±ç´æ¥ä¸ææå»ºï¼ä¸æå°ç¨æ·ç¹å¯¼åºææ´é² # 2) 䏿åä½ï¼æ¥åæ£ææ¯ä¸æï¼ç¼º CJK åä½ä¼æææ¹æ¡ï¼éè£ fonts-wqy-zenhei / Noto Sans CJK # 3) 以 root è¿è¡ï¼Chromium ä¸å --no-sandbox ä¼ç´æ¥æç»å¯å¨ï¼å®¹å¨ /dev/shm é»è®¤ä» 64Mï¼ # è¿é --disable-dev-shm-usageï¼å¦å渲æå¤§æ¥åæ¶ä¼éæºå´© enabled: true # å ³æåå¯¼åºæ¥å£ä¼æç¡®æ¥ãæªå¯ç¨ãï¼è䏿¯æ 500 channel: '' # çç©ºï¼æ¹ç±ä¸é¢ç executable-path æå®éåå ç chromium executable-path: /usr/local/bin/chromium # éåå chromium çåºå®ä½ç½®ï¼ç± Dockerfile 建软é¾ä¿è¯ concurrency: 2 # åæ¶è¿è¡ç PDF 渲æä¸éï¼Chromium å¾åå åï¼ä¸è¦æ¾å¼ timeout-ms: 30000 # 忬¡æ¸²æè¶ æ¶ï¼æ¯«ç§ï¼ï¼åæ¶ä¹æ¯æéçå¹¶ååé¢çä¸é show-page-number: true # 页èæå°ã第 N 页 / å ± M 页ã browser-args: [ '--no-sandbox', '--disable-dev-shm-usage' ] # 容å¨å 以 root è¿è¡å¿ éï¼ä¸¤é¡¹é½ä¸è½å»æ ai-import: # AI å¯¼å ¥ï¼ä¸ä¼ æ¢ææ¥åæä»¶ï¼è¯å«ææ¨¡æ¿è稿 # é¨ç½²åç½®ï¼åºç¨æå¡å¨éè½åºç½è®¿é® DashScopeï¼éä¹åé®ï¼ãå ç½é¨ç½²è¯·æ enabled ç½® falseï¼ # æ¥å£ä¼æç¡®æ¥ãæªå¯ç¨ãè䏿¯ä¸ç´çå° AI è¶ æ¶ãæ¤å¤è¿éå¨ãAI 大模åãéé å¥½å¯¹è¯æ¨¡åä¸å¯é¥ã enabled: true max-files: 3 # 䏿¬¡æå¤å 个æä»¶ max-pages-per-file: 5 # åæä»¶é¡µæ°ä¸éï¼è¶ åºæ¥éè䏿¯é黿ªæ max-pages-per-request: 8 # 䏿¬¡è¯·æ±ç´¯è®¡é¡µæ°ä¸éï¼å¤æä»¶å å åçæ»é¸ï¼ max-duration-seconds: 180 # 䏿¬¡å¯¼å ¥æ»èæ¶ä¸éï¼ä¸¤æ¬¡è°ç¨ä¹é´æ£æ¥ï¼ï¼åç«¯è¶ æ¶é¡»æ¯å®å ä¸ yudao.ai.timeout æ´å®½ max-file-size-mb: 20 # åæä»¶å¤§å°ä¸é max-components: 200 # è¯å«åºçç»ä»¶æ»æ°ä¸éï¼è¶ åºæªæå¹¶å¨æç¤ºé说æ pdf-text-page-threshold: 30 # 平忝页å符æ°ä½äºæ¤å¼å³ææ«æä»¶é页转å¾è¯å« render-dpi: 200 # æ«æé¡µè½¬å¾ç DPIï¼ä½äº 200 䏿åå½¢ä¼ç³ max-xlsx-rows: 300 # Excel å表æå¤è¯»åçè¡æ° database-backup: # æ°æ®åºå¤ä»½é ç½® host: 172.17.0.1 # å¤ä»½ç®æ MySQL 主æºï¼ç空èªå¨ä»æ°æ®æº JDBC URL è§£æ port: 9002 # å¤ä»½ç®æ MySQL 端å£ï¼ç空èªå¨ä»æ°æ®æº JDBC URL è§£æ database: mom-cqny # å¤ä»½ç®æ æ°æ®åºï¼ç空èªå¨ä»æ°æ®æº JDBC URL è§£æ username: root # å¤ä»½è´¦å·ï¼çç©ºä½¿ç¨æ°æ®æºè´¦å· password: 'xd@123456..' # å¤ä»½å¯ç ï¼çç©ºä½¿ç¨æ°æ®æºå¯ç command: # mysqldump å½ä»¤ï¼ç空èªå¨æ£æµé¨ç½²ç¯å¢ï¼æ¬æº mysqldump æ Docker MySQL 容å¨ï¼ï¼å¯æå¨æå®ï¼å¦ï¼docker exec mysql8 mysqldump yudao-server/src/main/resources/application-lyzy.yaml
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,237 @@ server: port: 48080 --- #################### æ°æ®åºç¸å ³é ç½® #################### spring: autoconfigure: # noinspection SpringBootApplicationYaml exclude: - org.springframework.boot.autoconfigure.quartz.QuartzAutoConfiguration # é»è®¤ local ç¯å¢ï¼ä¸å¼å¯ Quartz çèªå¨é ç½® - org.springframework.ai.vectorstore.qdrant.autoconfigure.QdrantVectorStoreAutoConfiguration # ç¦ç¨ AI 模åç Qdrantï¼æå¨å建 - org.springframework.ai.vectorstore.redis.autoconfigure.RedisVectorStoreAutoConfiguration # ç¦ç¨ AI 模åç Redisï¼æå¨å建 - org.springframework.ai.vectorstore.milvus.autoconfigure.MilvusVectorStoreAutoConfiguration # ç¦ç¨ AI 模åç Milvusï¼æå¨å建 - org.dromara.trans.config.TransServiceConfig # TODO èè¿ï¼easy-trans å ¼å®¹ Spring Boot 4 åç§»é¤ï¼TransServiceConfig å¼ç¨äºå·²ç§»é¤ç RestTemplateBuilderï¼ # ç¦ç¨æªé ç½® API Key çæ¨¡åèªå¨é ç½®ï¼åªä¿çéä¹åé® Embedding çæå¨é ç½®ï¼ - org.springframework.ai.model.openai.autoconfigure.OpenAiChatAutoConfiguration - org.springframework.ai.model.openai.autoconfigure.OpenAiEmbeddingAutoConfiguration - org.springframework.ai.model.openai.autoconfigure.OpenAiImageAutoConfiguration - org.springframework.ai.model.openai.autoconfigure.OpenAiAudioSpeechAutoConfiguration - org.springframework.ai.model.openai.autoconfigure.OpenAiAudioTranscriptionAutoConfiguration - org.springframework.ai.model.openai.autoconfigure.OpenAiModerationAutoConfiguration - org.springframework.ai.model.deepseek.autoconfigure.DeepSeekChatAutoConfiguration - org.springframework.ai.model.anthropic.autoconfigure.AnthropicChatAutoConfiguration - org.springframework.ai.model.google.genai.autoconfigure.chat.GoogleGenAiChatAutoConfiguration - org.springframework.ai.model.google.genai.autoconfigure.embedding.GoogleGenAiEmbeddingConnectionAutoConfiguration - org.springframework.ai.model.google.genai.autoconfigure.embedding.GoogleGenAiTextEmbeddingAutoConfiguration - org.springframework.ai.model.ollama.autoconfigure.OllamaApiAutoConfiguration - org.springframework.ai.model.ollama.autoconfigure.OllamaChatAutoConfiguration - org.springframework.ai.model.ollama.autoconfigure.OllamaEmbeddingAutoConfiguration - org.springframework.ai.model.stabilityai.autoconfigure.StabilityAiImageAutoConfiguration # æ°æ®æºé 置项 datasource: druid: # Druid ãçæ§ãç¸å ³çå ¨å±é ç½® web-stat-filter: enabled: true stat-view-servlet: enabled: true allow: # 设置ç½ååï¼ä¸å¡«åå 许ææè®¿é® url-pattern: /druid/* login-username: # æ§å¶å°ç®¡çç¨æ·ååå¯ç login-password: filter: stat: enabled: true log-slow-sql: true # æ ¢ SQL è®°å½ slow-sql-millis: 100 merge-sql: true wall: config: multi-statement-allow: true dynamic: # 夿°æ®æºé ç½® druid: # Druid ãè¿æ¥æ± ãç¸å ³çå ¨å±é ç½® initial-size: 1 # åå§è¿æ¥æ° min-idle: 1 # æå°è¿æ¥æ± æ°é max-active: 20 # æå¤§è¿æ¥æ± æ°é max-wait: 60000 # é ç½®è·åè¿æ¥çå¾ è¶ æ¶çæ¶é´ï¼åä½ï¼æ¯«ç§ï¼1 åéï¼ time-between-eviction-runs-millis: 60000 # é ç½®é´éå¤ä¹ æè¿è¡ä¸æ¬¡æ£æµï¼æ£æµéè¦å ³éç空é²è¿æ¥ï¼åä½ï¼æ¯«ç§ï¼1 åéï¼ min-evictable-idle-time-millis: 600000 # é ç½®ä¸ä¸ªè¿æ¥å¨æ± 䏿å°çåçæ¶é´ï¼åä½ï¼æ¯«ç§ï¼10 åéï¼ max-evictable-idle-time-millis: 1800000 # é ç½®ä¸ä¸ªè¿æ¥å¨æ± 䏿大çåçæ¶é´ï¼åä½ï¼æ¯«ç§ï¼30 åéï¼ validation-query: SELECT 1 FROM DUAL # é ç½®æ£æµè¿æ¥æ¯å¦ææ test-while-idle: true test-on-borrow: false test-on-return: false pool-prepared-statements: true # æ¯å¦å¼å¯ PreparedStatement ç¼å max-pool-prepared-statement-per-connection-size: 20 # æ¯ä¸ªè¿æ¥ç¼åç PreparedStatement æ°é primary: master datasource: master: url: jdbc:mysql://172.17.0.1:10000/mom-lyzy?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true&rewriteBatchedStatements=true # MySQL Connector/J 8.X è¿æ¥çç¤ºä¾ username: root password: xd@123456.. # Redis é ç½®ãRedisson é»è®¤çé 置足å¤ä½¿ç¨ï¼ä¸è¬ä¸éè¦è¿è¡è°ä¼ data: redis: host: 172.17.0.1 # å°å port: 9999 # ç«¯å£ database: 9 # æ°æ®åºç´¢å¼ # password: dev # å¯ç ï¼å»ºè®®ç产ç¯å¢å¼å¯ --- #################### 宿¶ä»»å¡ç¸å ³é ç½® #################### # Quartz é 置项ï¼å¯¹åº QuartzProperties é 置类 spring: quartz: auto-startup: true # æ¬å°å¼åç¯å¢ï¼å°½éä¸è¦å¼å¯ Job scheduler-name: schedulerName # Scheduler ååãé»è®¤ä¸º schedulerName job-store-type: jdbc # Job åå¨å¨ç±»åãé»è®¤ä¸º memory 表示å åï¼å¯é jdbc ä½¿ç¨æ°æ®åºã wait-for-jobs-to-complete-on-shutdown: true # åºç¨å ³éæ¶ï¼æ¯å¦çå¾ å®æ¶ä»»å¡æ§è¡å®æãé»è®¤ä¸º false ï¼å»ºè®®è®¾ç½®ä¸º true properties: # æ·»å Quartz Scheduler éå 屿§ï¼æ´å¤å¯ä»¥ç http://www.quartz-scheduler.org/documentation/2.4.0-SNAPSHOT/configuration.html ææ¡£ org: quartz: # Scheduler ç¸å ³é ç½® scheduler: instanceName: schedulerName instanceId: AUTO # èªå¨çæ instance ID # JobStore ç¸å ³é ç½® jobStore: # JobStore å®ç°ç±»ãå¯è§å客ï¼https://blog.csdn.net/weixin_42458219/article/details/122247162 class: org.springframework.scheduling.quartz.LocalDataSourceJobStore isClustered: true # æ¯éç¾¤æ¨¡å¼ clusterCheckinInterval: 15000 # éç¾¤æ£æ¥é¢çï¼åä½ï¼æ¯«ç§ãé»è®¤ä¸º 15000ï¼å³ 15 ç§ misfireThreshold: 60000 # misfire éå¼ï¼åä½ï¼æ¯«ç§ã # çº¿ç¨æ± ç¸å ³é ç½® threadPool: threadCount: 25 # çº¿ç¨æ± 大å°ãé»è®¤ä¸º 10 ã threadPriority: 5 # 线ç¨ä¼å 级 class: org.quartz.simpl.SimpleThreadPool # çº¿ç¨æ± ç±»å jdbc: # ä½¿ç¨ JDBC ç JobStore çæ¶åï¼JDBC çé ç½® initialize-schema: NEVER # æ¯å¦èªå¨ä½¿ç¨ SQL åå§å Quartz è¡¨ç»æãè¿é设置æ never ï¼æä»¬æå¨åå»ºè¡¨ç»æã --- #################### æå¡ä¿éç¸å ³é ç½® #################### # Lock4j é 置项 lock4j: acquire-timeout: 3000 # è·ååå¸å¼éè¶ æ¶æ¶é´ï¼é»è®¤ä¸º 3000 æ¯«ç§ expire: 30000 # åå¸å¼éçè¶ æ¶æ¶é´ï¼é»è®¤ä¸º 30000 æ¯«ç§ --- #################### çæ§ç¸å ³é ç½® #################### # Actuator çæ§ç«¯ç¹çé 置项 management: endpoints: web: base-path: /actuator # Actuator æä¾ç API æ¥å£çæ ¹ç®å½ãé»è®¤ä¸º /actuator exposure: include: '*' # éè¦å¼æ¾ç端ç¹ãé»è®¤å¼åªæå¼ health å info 两个端ç¹ãéè¿è®¾ç½® * ï¼å¯ä»¥å¼æ¾ææç«¯ç¹ã # Spring Boot Admin é 置项 spring: boot: admin: # Spring Boot Admin Client 客æ·ç«¯çç¸å ³é ç½® client: url: http://127.0.0.1:${server.port}/${spring.boot.admin.context-path} # 设置 Spring Boot Admin Server å°å instance: service-host-type: IP # 注åå®ä¾æ¶ï¼ä¼å ä½¿ç¨ IP [IP, HOST_NAME, CANONICAL_HOST_NAME] username: admin password: admin # Spring Boot Admin Server æå¡ç«¯çç¸å ³é ç½® context-path: /admin # é ç½® Spring # å 许åµå ¥ iframe çååï¼æ¯æéé 符ï¼ï¼å®é é¨ç½²æ¶ï¼å¯ä»¥æ¹ä¸º "'self' [ä½ çå ¬ç½åå]" frame-ancestors: "'self' localhost localhost:48080 127.0.0.1 127.0.0.1:48080" # æ¥å¿æä»¶é ç½® logging: file: name: logs/${spring.application.name}.log # æ¥å¿æä»¶åï¼ç¸å¯¹äºé¡¹ç®æ ¹ç®å½ level: # é ç½®èªå·±åç MyBatis Mapper æå°æ¥å¿ cn.iocoder.yudao.module.bpm.dal.mysql: debug cn.iocoder.yudao.module.infra.dal.mysql: debug cn.iocoder.yudao.module.infra.dal.mysql.logger.ApiErrorLogMapper: INFO # é ç½® ApiErrorLogMapper çæ¥å¿çº§å«ä¸º infoï¼é¿å å GlobalExceptionHandler éå¤æå° cn.iocoder.yudao.module.infra.dal.mysql.job.JobLogMapper: INFO # é ç½® JobLogMapper çæ¥å¿çº§å«ä¸º info cn.iocoder.yudao.module.infra.dal.mysql.file.FileConfigMapper: INFO # é ç½® FileConfigMapper çæ¥å¿çº§å«ä¸º info cn.iocoder.yudao.module.system.dal.mysql: debug cn.iocoder.yudao.module.system.dal.mysql.sms.SmsChannelMapper: INFO # é ç½® SmsChannelMapper çæ¥å¿çº§å«ä¸º info cn.iocoder.yudao.module.member.dal.mysql: debug cn.iocoder.yudao.module.crm.dal.mysql: debug cn.iocoder.yudao.module.erp.dal.mysql: debug cn.iocoder.yudao.module.mes.dal.mysql: debug cn.iocoder.yudao.module.ai.dal.mysql: debug cn.iocoder.yudao.module.im.dal.mysql: debug org.springframework.context.support.PostProcessorRegistrationDelegate: ERROR # TODO èè¿ï¼å ç¦ç¨ï¼Spring Boot 3.X åå¨é¨åé误ç WARN æç¤º debug: false yudao: ai: timeout: 60s # 忬¡å¤§æ¨¡åè°ç¨è¶ æ¶ï¼ä¸è®¾çè¯æ¨¡åæéæ¶è¯·æ±ä¼ä¸ç´æèµ· vector-store: type: milvus # åéåºç±»åï¼milvus milvus: initialize-schema: true database-name: test collection-name: knowledge_segment_lyzy host: 36.213.90.123 port: 19530 --- #################### è¶ çº§ç®¡çåç¸å ³é ç½® #################### # è¶ çº§ç®¡çåé 置项ï¼è®¾ç½®å½åé¡¹ç®ææèªå®ä¹çé ç½® yudao: captcha: enable: false # æ¬å°ç¯å¢ï¼ææ¶å ³éå¾çéªè¯ç ï¼æ¹ä¾¿ç»å½çæ¥å£çæµè¯ï¼ security: mock-enable: true access-log: # è®¿é®æ¥å¿çé 置项 enable: false demo: false # å ³éæ¼ç¤ºæ¨¡å¼ storage: # æä»¶ä¸ä¼ é ç½® path: /data/javaWork/mom/file # æä»¶å卿 ¹ç®å½ url-prefix: /admin-api/system/storage-blob # URLè·¯å¾åç¼ domain: http://36.213.150.237:9020 # åååç¼ï¼æå®é ååé ç½®ï¼ï¼å端é 置好åä¸å¤ªå¯¹ç°å¨æ¯ç´è¿åç«¯ï¼ææè¦åç«¯ç«¯å£ expired: 120 # tokenè¿ææ¶é´ï¼åéï¼ use-limit: 10 # tokenä½¿ç¨æ¬¡æ°ä¸é jwt-secret: abcdefghijklmnopqrstuvwxyz0123456789ABCDEFG # JWTå¯é¥ compress: true # æ¯å¦å缩å¾ç need-compress-size: 10MB # 触åå缩çæä»¶å¤§å°éå¼ compress-quality: 0.5 # å缩质é(0.0-1.0) qcreport: # æºè½è´¨æ£æ¥å pdf: # PDF åºä»¶ï¼æå¡ç«¯è° Chromium ææ¥å HTML æå°æ PDF # é¨ç½²åç½®ï¼å®¹å¨å ï¼è§ç产 Dockerfile ç USER rootï¼ï¼ # 1) æµè§å¨ï¼å¤é¶æ®µæå»ºä» mcr.microsoft.com/playwright:v1.63.0-jammy é # COPY --from ååº /ms-playwright ä¸ç chromiumï¼è¯¥éååºåº§æ¯ Ubuntu 22.04/glibc 2.35ï¼ # ä¸è¿è¡éåä¸è´ï¼ãPlaywright ä¸ä¼æ¿ä½ ä¸è½½æµè§å¨ï¼è£ å¨å®¿ä¸»æºä¹æ²¡ç¨ï¼å¿ é¡»è¿éåï¼ # æå»ºæ«å°¾æå®è½¯é¾å° /usr/local/bin/chromiumï¼å¹¶ç¨ --version + ldd èªæ£ï¼ # è£ å¤±è´¥å°±ç´æ¥ä¸ææå»ºï¼ä¸æå°ç¨æ·ç¹å¯¼åºææ´é² # 2) 䏿åä½ï¼æ¥åæ£ææ¯ä¸æï¼ç¼º CJK åä½ä¼æææ¹æ¡ï¼éè£ fonts-wqy-zenhei / Noto Sans CJK # 3) 以 root è¿è¡ï¼Chromium ä¸å --no-sandbox ä¼ç´æ¥æç»å¯å¨ï¼å®¹å¨ /dev/shm é»è®¤ä» 64Mï¼ # è¿é --disable-dev-shm-usageï¼å¦å渲æå¤§æ¥åæ¶ä¼éæºå´© enabled: true # å ³æåå¯¼åºæ¥å£ä¼æç¡®æ¥ãæªå¯ç¨ãï¼è䏿¯æ 500 channel: '' # çç©ºï¼æ¹ç±ä¸é¢ç executable-path æå®éåå ç chromium executable-path: /usr/local/bin/chromium # éåå chromium çåºå®ä½ç½®ï¼ç± Dockerfile 建软é¾ä¿è¯ concurrency: 2 # åæ¶è¿è¡ç PDF 渲æä¸éï¼Chromium å¾åå åï¼ä¸è¦æ¾å¼ timeout-ms: 30000 # 忬¡æ¸²æè¶ æ¶ï¼æ¯«ç§ï¼ï¼åæ¶ä¹æ¯æéçå¹¶ååé¢çä¸é show-page-number: true # 页èæå°ã第 N 页 / å ± M 页ã browser-args: [ '--no-sandbox', '--disable-dev-shm-usage' ] # 容å¨å 以 root è¿è¡å¿ éï¼ä¸¤é¡¹é½ä¸è½å»æ ai-import: # AI å¯¼å ¥ï¼ä¸ä¼ æ¢ææ¥åæä»¶ï¼è¯å«ææ¨¡æ¿è稿 # é¨ç½²åç½®ï¼åºç¨æå¡å¨éè½åºç½è®¿é® DashScopeï¼éä¹åé®ï¼ãå ç½é¨ç½²è¯·æ enabled ç½® falseï¼ # æ¥å£ä¼æç¡®æ¥ãæªå¯ç¨ãè䏿¯ä¸ç´çå° AI è¶ æ¶ãæ¤å¤è¿éå¨ãAI 大模åãéé å¥½å¯¹è¯æ¨¡åä¸å¯é¥ã enabled: true max-files: 3 # 䏿¬¡æå¤å 个æä»¶ max-pages-per-file: 5 # åæä»¶é¡µæ°ä¸éï¼è¶ åºæ¥éè䏿¯é黿ªæ max-pages-per-request: 8 # 䏿¬¡è¯·æ±ç´¯è®¡é¡µæ°ä¸éï¼å¤æä»¶å å åçæ»é¸ï¼ max-duration-seconds: 180 # 䏿¬¡å¯¼å ¥æ»èæ¶ä¸éï¼ä¸¤æ¬¡è°ç¨ä¹é´æ£æ¥ï¼ï¼åç«¯è¶ æ¶é¡»æ¯å®å ä¸ yudao.ai.timeout æ´å®½ max-file-size-mb: 20 # åæä»¶å¤§å°ä¸é max-components: 200 # è¯å«åºçç»ä»¶æ»æ°ä¸éï¼è¶ åºæªæå¹¶å¨æç¤ºé说æ pdf-text-page-threshold: 30 # 平忝页å符æ°ä½äºæ¤å¼å³ææ«æä»¶é页转å¾è¯å« render-dpi: 200 # æ«æé¡µè½¬å¾ç DPIï¼ä½äº 200 䏿åå½¢ä¼ç³ max-xlsx-rows: 300 # Excel å表æå¤è¯»åçè¡æ° database-backup: # æ°æ®åºå¤ä»½é ç½® host: 172.17.0.1 # å¤ä»½ç®æ MySQL 主æºï¼ç空èªå¨ä»æ°æ®æº JDBC URL è§£æ port: 9002 # å¤ä»½ç®æ MySQL 端å£ï¼ç空èªå¨ä»æ°æ®æº JDBC URL è§£æ database: mom-lyzy # å¤ä»½ç®æ æ°æ®åºï¼ç空èªå¨ä»æ°æ®æº JDBC URL è§£æ username: root # å¤ä»½è´¦å·ï¼çç©ºä½¿ç¨æ°æ®æºè´¦å· password: 'xd@123456..' # å¤ä»½å¯ç ï¼çç©ºä½¿ç¨æ°æ®æºå¯ç command: # mysqldump å½ä»¤ï¼ç空èªå¨æ£æµé¨ç½²ç¯å¢ï¼æ¬æº mysqldump æ Docker MySQL 容å¨ï¼ï¼å¯æå¨æå®ï¼å¦ï¼docker exec mysql8 mysqldump yudao-server/src/main/resources/application-xhxcl.yaml
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,237 @@ server: port: 48080 --- #################### æ°æ®åºç¸å ³é ç½® #################### spring: autoconfigure: # noinspection SpringBootApplicationYaml exclude: - org.springframework.boot.autoconfigure.quartz.QuartzAutoConfiguration # é»è®¤ local ç¯å¢ï¼ä¸å¼å¯ Quartz çèªå¨é ç½® - org.springframework.ai.vectorstore.qdrant.autoconfigure.QdrantVectorStoreAutoConfiguration # ç¦ç¨ AI 模åç Qdrantï¼æå¨å建 - org.springframework.ai.vectorstore.redis.autoconfigure.RedisVectorStoreAutoConfiguration # ç¦ç¨ AI 模åç Redisï¼æå¨å建 - org.springframework.ai.vectorstore.milvus.autoconfigure.MilvusVectorStoreAutoConfiguration # ç¦ç¨ AI 模åç Milvusï¼æå¨å建 - org.dromara.trans.config.TransServiceConfig # TODO èè¿ï¼easy-trans å ¼å®¹ Spring Boot 4 åç§»é¤ï¼TransServiceConfig å¼ç¨äºå·²ç§»é¤ç RestTemplateBuilderï¼ # ç¦ç¨æªé ç½® API Key çæ¨¡åèªå¨é ç½®ï¼åªä¿çéä¹åé® Embedding çæå¨é ç½®ï¼ - org.springframework.ai.model.openai.autoconfigure.OpenAiChatAutoConfiguration - org.springframework.ai.model.openai.autoconfigure.OpenAiEmbeddingAutoConfiguration - org.springframework.ai.model.openai.autoconfigure.OpenAiImageAutoConfiguration - org.springframework.ai.model.openai.autoconfigure.OpenAiAudioSpeechAutoConfiguration - org.springframework.ai.model.openai.autoconfigure.OpenAiAudioTranscriptionAutoConfiguration - org.springframework.ai.model.openai.autoconfigure.OpenAiModerationAutoConfiguration - org.springframework.ai.model.deepseek.autoconfigure.DeepSeekChatAutoConfiguration - org.springframework.ai.model.anthropic.autoconfigure.AnthropicChatAutoConfiguration - org.springframework.ai.model.google.genai.autoconfigure.chat.GoogleGenAiChatAutoConfiguration - org.springframework.ai.model.google.genai.autoconfigure.embedding.GoogleGenAiEmbeddingConnectionAutoConfiguration - org.springframework.ai.model.google.genai.autoconfigure.embedding.GoogleGenAiTextEmbeddingAutoConfiguration - org.springframework.ai.model.ollama.autoconfigure.OllamaApiAutoConfiguration - org.springframework.ai.model.ollama.autoconfigure.OllamaChatAutoConfiguration - org.springframework.ai.model.ollama.autoconfigure.OllamaEmbeddingAutoConfiguration - org.springframework.ai.model.stabilityai.autoconfigure.StabilityAiImageAutoConfiguration # æ°æ®æºé 置项 datasource: druid: # Druid ãçæ§ãç¸å ³çå ¨å±é ç½® web-stat-filter: enabled: true stat-view-servlet: enabled: true allow: # 设置ç½ååï¼ä¸å¡«åå 许ææè®¿é® url-pattern: /druid/* login-username: # æ§å¶å°ç®¡çç¨æ·ååå¯ç login-password: filter: stat: enabled: true log-slow-sql: true # æ ¢ SQL è®°å½ slow-sql-millis: 100 merge-sql: true wall: config: multi-statement-allow: true dynamic: # 夿°æ®æºé ç½® druid: # Druid ãè¿æ¥æ± ãç¸å ³çå ¨å±é ç½® initial-size: 1 # åå§è¿æ¥æ° min-idle: 1 # æå°è¿æ¥æ± æ°é max-active: 20 # æå¤§è¿æ¥æ± æ°é max-wait: 60000 # é ç½®è·åè¿æ¥çå¾ è¶ æ¶çæ¶é´ï¼åä½ï¼æ¯«ç§ï¼1 åéï¼ time-between-eviction-runs-millis: 60000 # é ç½®é´éå¤ä¹ æè¿è¡ä¸æ¬¡æ£æµï¼æ£æµéè¦å ³éç空é²è¿æ¥ï¼åä½ï¼æ¯«ç§ï¼1 åéï¼ min-evictable-idle-time-millis: 600000 # é ç½®ä¸ä¸ªè¿æ¥å¨æ± 䏿å°çåçæ¶é´ï¼åä½ï¼æ¯«ç§ï¼10 åéï¼ max-evictable-idle-time-millis: 1800000 # é ç½®ä¸ä¸ªè¿æ¥å¨æ± 䏿大çåçæ¶é´ï¼åä½ï¼æ¯«ç§ï¼30 åéï¼ validation-query: SELECT 1 FROM DUAL # é ç½®æ£æµè¿æ¥æ¯å¦ææ test-while-idle: true test-on-borrow: false test-on-return: false pool-prepared-statements: true # æ¯å¦å¼å¯ PreparedStatement ç¼å max-pool-prepared-statement-per-connection-size: 20 # æ¯ä¸ªè¿æ¥ç¼åç PreparedStatement æ°é primary: master datasource: master: url: jdbc:mysql://172.17.0.1:10000/mom-xhxcl?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true&rewriteBatchedStatements=true # MySQL Connector/J 8.X è¿æ¥çç¤ºä¾ username: root password: xd@123456.. # Redis é ç½®ãRedisson é»è®¤çé 置足å¤ä½¿ç¨ï¼ä¸è¬ä¸éè¦è¿è¡è°ä¼ data: redis: host: 172.17.0.1 # å°å port: 9999 # ç«¯å£ database: 10 # æ°æ®åºç´¢å¼ # password: dev # å¯ç ï¼å»ºè®®ç产ç¯å¢å¼å¯ --- #################### 宿¶ä»»å¡ç¸å ³é ç½® #################### # Quartz é 置项ï¼å¯¹åº QuartzProperties é 置类 spring: quartz: auto-startup: true # æ¬å°å¼åç¯å¢ï¼å°½éä¸è¦å¼å¯ Job scheduler-name: schedulerName # Scheduler ååãé»è®¤ä¸º schedulerName job-store-type: jdbc # Job åå¨å¨ç±»åãé»è®¤ä¸º memory 表示å åï¼å¯é jdbc ä½¿ç¨æ°æ®åºã wait-for-jobs-to-complete-on-shutdown: true # åºç¨å ³éæ¶ï¼æ¯å¦çå¾ å®æ¶ä»»å¡æ§è¡å®æãé»è®¤ä¸º false ï¼å»ºè®®è®¾ç½®ä¸º true properties: # æ·»å Quartz Scheduler éå 屿§ï¼æ´å¤å¯ä»¥ç http://www.quartz-scheduler.org/documentation/2.4.0-SNAPSHOT/configuration.html ææ¡£ org: quartz: # Scheduler ç¸å ³é ç½® scheduler: instanceName: schedulerName instanceId: AUTO # èªå¨çæ instance ID # JobStore ç¸å ³é ç½® jobStore: # JobStore å®ç°ç±»ãå¯è§å客ï¼https://blog.csdn.net/weixin_42458219/article/details/122247162 class: org.springframework.scheduling.quartz.LocalDataSourceJobStore isClustered: true # æ¯éç¾¤æ¨¡å¼ clusterCheckinInterval: 15000 # éç¾¤æ£æ¥é¢çï¼åä½ï¼æ¯«ç§ãé»è®¤ä¸º 15000ï¼å³ 15 ç§ misfireThreshold: 60000 # misfire éå¼ï¼åä½ï¼æ¯«ç§ã # çº¿ç¨æ± ç¸å ³é ç½® threadPool: threadCount: 25 # çº¿ç¨æ± 大å°ãé»è®¤ä¸º 10 ã threadPriority: 5 # 线ç¨ä¼å 级 class: org.quartz.simpl.SimpleThreadPool # çº¿ç¨æ± ç±»å jdbc: # ä½¿ç¨ JDBC ç JobStore çæ¶åï¼JDBC çé ç½® initialize-schema: NEVER # æ¯å¦èªå¨ä½¿ç¨ SQL åå§å Quartz è¡¨ç»æãè¿é设置æ never ï¼æä»¬æå¨åå»ºè¡¨ç»æã --- #################### æå¡ä¿éç¸å ³é ç½® #################### # Lock4j é 置项 lock4j: acquire-timeout: 3000 # è·ååå¸å¼éè¶ æ¶æ¶é´ï¼é»è®¤ä¸º 3000 æ¯«ç§ expire: 30000 # åå¸å¼éçè¶ æ¶æ¶é´ï¼é»è®¤ä¸º 30000 æ¯«ç§ --- #################### çæ§ç¸å ³é ç½® #################### # Actuator çæ§ç«¯ç¹çé 置项 management: endpoints: web: base-path: /actuator # Actuator æä¾ç API æ¥å£çæ ¹ç®å½ãé»è®¤ä¸º /actuator exposure: include: '*' # éè¦å¼æ¾ç端ç¹ãé»è®¤å¼åªæå¼ health å info 两个端ç¹ãéè¿è®¾ç½® * ï¼å¯ä»¥å¼æ¾ææç«¯ç¹ã # Spring Boot Admin é 置项 spring: boot: admin: # Spring Boot Admin Client 客æ·ç«¯çç¸å ³é ç½® client: url: http://127.0.0.1:${server.port}/${spring.boot.admin.context-path} # 设置 Spring Boot Admin Server å°å instance: service-host-type: IP # 注åå®ä¾æ¶ï¼ä¼å ä½¿ç¨ IP [IP, HOST_NAME, CANONICAL_HOST_NAME] username: admin password: admin # Spring Boot Admin Server æå¡ç«¯çç¸å ³é ç½® context-path: /admin # é ç½® Spring # å 许åµå ¥ iframe çååï¼æ¯æéé 符ï¼ï¼å®é é¨ç½²æ¶ï¼å¯ä»¥æ¹ä¸º "'self' [ä½ çå ¬ç½åå]" frame-ancestors: "'self' localhost localhost:48080 127.0.0.1 127.0.0.1:48080" # æ¥å¿æä»¶é ç½® logging: file: name: logs/${spring.application.name}.log # æ¥å¿æä»¶åï¼ç¸å¯¹äºé¡¹ç®æ ¹ç®å½ level: # é ç½®èªå·±åç MyBatis Mapper æå°æ¥å¿ cn.iocoder.yudao.module.bpm.dal.mysql: debug cn.iocoder.yudao.module.infra.dal.mysql: debug cn.iocoder.yudao.module.infra.dal.mysql.logger.ApiErrorLogMapper: INFO # é ç½® ApiErrorLogMapper çæ¥å¿çº§å«ä¸º infoï¼é¿å å GlobalExceptionHandler éå¤æå° cn.iocoder.yudao.module.infra.dal.mysql.job.JobLogMapper: INFO # é ç½® JobLogMapper çæ¥å¿çº§å«ä¸º info cn.iocoder.yudao.module.infra.dal.mysql.file.FileConfigMapper: INFO # é ç½® FileConfigMapper çæ¥å¿çº§å«ä¸º info cn.iocoder.yudao.module.system.dal.mysql: debug cn.iocoder.yudao.module.system.dal.mysql.sms.SmsChannelMapper: INFO # é ç½® SmsChannelMapper çæ¥å¿çº§å«ä¸º info cn.iocoder.yudao.module.member.dal.mysql: debug cn.iocoder.yudao.module.crm.dal.mysql: debug cn.iocoder.yudao.module.erp.dal.mysql: debug cn.iocoder.yudao.module.mes.dal.mysql: debug cn.iocoder.yudao.module.ai.dal.mysql: debug cn.iocoder.yudao.module.im.dal.mysql: debug org.springframework.context.support.PostProcessorRegistrationDelegate: ERROR # TODO èè¿ï¼å ç¦ç¨ï¼Spring Boot 3.X åå¨é¨åé误ç WARN æç¤º debug: false yudao: ai: timeout: 60s # 忬¡å¤§æ¨¡åè°ç¨è¶ æ¶ï¼ä¸è®¾çè¯æ¨¡åæéæ¶è¯·æ±ä¼ä¸ç´æèµ· vector-store: type: milvus # åéåºç±»åï¼milvus milvus: initialize-schema: true database-name: test collection-name: knowledge_segment_xhxcl host: 36.213.90.123 port: 19530 --- #################### è¶ çº§ç®¡çåç¸å ³é ç½® #################### # è¶ çº§ç®¡çåé 置项ï¼è®¾ç½®å½åé¡¹ç®ææèªå®ä¹çé ç½® yudao: captcha: enable: false # æ¬å°ç¯å¢ï¼ææ¶å ³éå¾çéªè¯ç ï¼æ¹ä¾¿ç»å½çæ¥å£çæµè¯ï¼ security: mock-enable: true access-log: # è®¿é®æ¥å¿çé 置项 enable: false demo: false # å ³éæ¼ç¤ºæ¨¡å¼ storage: # æä»¶ä¸ä¼ é ç½® path: /data/javaWork/mom/file # æä»¶å卿 ¹ç®å½ url-prefix: /admin-api/system/storage-blob # URLè·¯å¾åç¼ domain: http://36.213.150.237:9022 # åååç¼ï¼æå®é ååé ç½®ï¼ï¼å端é 置好åä¸å¤ªå¯¹ç°å¨æ¯ç´è¿åç«¯ï¼ææè¦åç«¯ç«¯å£ expired: 120 # tokenè¿ææ¶é´ï¼åéï¼ use-limit: 10 # tokenä½¿ç¨æ¬¡æ°ä¸é jwt-secret: abcdefghijklmnopqrstuvwxyz0123456789ABCDEFG # JWTå¯é¥ compress: true # æ¯å¦å缩å¾ç need-compress-size: 10MB # 触åå缩çæä»¶å¤§å°éå¼ compress-quality: 0.5 # å缩质é(0.0-1.0) qcreport: # æºè½è´¨æ£æ¥å pdf: # PDF åºä»¶ï¼æå¡ç«¯è° Chromium ææ¥å HTML æå°æ PDF # é¨ç½²åç½®ï¼å®¹å¨å ï¼è§ç产 Dockerfile ç USER rootï¼ï¼ # 1) æµè§å¨ï¼å¤é¶æ®µæå»ºä» mcr.microsoft.com/playwright:v1.63.0-jammy é # COPY --from ååº /ms-playwright ä¸ç chromiumï¼è¯¥éååºåº§æ¯ Ubuntu 22.04/glibc 2.35ï¼ # ä¸è¿è¡éåä¸è´ï¼ãPlaywright ä¸ä¼æ¿ä½ ä¸è½½æµè§å¨ï¼è£ å¨å®¿ä¸»æºä¹æ²¡ç¨ï¼å¿ é¡»è¿éåï¼ # æå»ºæ«å°¾æå®è½¯é¾å° /usr/local/bin/chromiumï¼å¹¶ç¨ --version + ldd èªæ£ï¼ # è£ å¤±è´¥å°±ç´æ¥ä¸ææå»ºï¼ä¸æå°ç¨æ·ç¹å¯¼åºææ´é² # 2) 䏿åä½ï¼æ¥åæ£ææ¯ä¸æï¼ç¼º CJK åä½ä¼æææ¹æ¡ï¼éè£ fonts-wqy-zenhei / Noto Sans CJK # 3) 以 root è¿è¡ï¼Chromium ä¸å --no-sandbox ä¼ç´æ¥æç»å¯å¨ï¼å®¹å¨ /dev/shm é»è®¤ä» 64Mï¼ # è¿é --disable-dev-shm-usageï¼å¦å渲æå¤§æ¥åæ¶ä¼éæºå´© enabled: true # å ³æåå¯¼åºæ¥å£ä¼æç¡®æ¥ãæªå¯ç¨ãï¼è䏿¯æ 500 channel: '' # çç©ºï¼æ¹ç±ä¸é¢ç executable-path æå®éåå ç chromium executable-path: /usr/local/bin/chromium # éåå chromium çåºå®ä½ç½®ï¼ç± Dockerfile 建软é¾ä¿è¯ concurrency: 2 # åæ¶è¿è¡ç PDF 渲æä¸éï¼Chromium å¾åå åï¼ä¸è¦æ¾å¼ timeout-ms: 30000 # 忬¡æ¸²æè¶ æ¶ï¼æ¯«ç§ï¼ï¼åæ¶ä¹æ¯æéçå¹¶ååé¢çä¸é show-page-number: true # 页èæå°ã第 N 页 / å ± M 页ã browser-args: [ '--no-sandbox', '--disable-dev-shm-usage' ] # 容å¨å 以 root è¿è¡å¿ éï¼ä¸¤é¡¹é½ä¸è½å»æ ai-import: # AI å¯¼å ¥ï¼ä¸ä¼ æ¢ææ¥åæä»¶ï¼è¯å«ææ¨¡æ¿è稿 # é¨ç½²åç½®ï¼åºç¨æå¡å¨éè½åºç½è®¿é® DashScopeï¼éä¹åé®ï¼ãå ç½é¨ç½²è¯·æ enabled ç½® falseï¼ # æ¥å£ä¼æç¡®æ¥ãæªå¯ç¨ãè䏿¯ä¸ç´çå° AI è¶ æ¶ãæ¤å¤è¿éå¨ãAI 大模åãéé å¥½å¯¹è¯æ¨¡åä¸å¯é¥ã enabled: true max-files: 3 # 䏿¬¡æå¤å 个æä»¶ max-pages-per-file: 5 # åæä»¶é¡µæ°ä¸éï¼è¶ åºæ¥éè䏿¯é黿ªæ max-pages-per-request: 8 # 䏿¬¡è¯·æ±ç´¯è®¡é¡µæ°ä¸éï¼å¤æä»¶å å åçæ»é¸ï¼ max-duration-seconds: 180 # 䏿¬¡å¯¼å ¥æ»èæ¶ä¸éï¼ä¸¤æ¬¡è°ç¨ä¹é´æ£æ¥ï¼ï¼åç«¯è¶ æ¶é¡»æ¯å®å ä¸ yudao.ai.timeout æ´å®½ max-file-size-mb: 20 # åæä»¶å¤§å°ä¸é max-components: 200 # è¯å«åºçç»ä»¶æ»æ°ä¸éï¼è¶ åºæªæå¹¶å¨æç¤ºé说æ pdf-text-page-threshold: 30 # 平忝页å符æ°ä½äºæ¤å¼å³ææ«æä»¶é页转å¾è¯å« render-dpi: 200 # æ«æé¡µè½¬å¾ç DPIï¼ä½äº 200 䏿åå½¢ä¼ç³ max-xlsx-rows: 300 # Excel å表æå¤è¯»åçè¡æ° database-backup: # æ°æ®åºå¤ä»½é ç½® host: 172.17.0.1 # å¤ä»½ç®æ MySQL 主æºï¼ç空èªå¨ä»æ°æ®æº JDBC URL è§£æ port: 9002 # å¤ä»½ç®æ MySQL 端å£ï¼ç空èªå¨ä»æ°æ®æº JDBC URL è§£æ database: mom-xhxcl # å¤ä»½ç®æ æ°æ®åºï¼ç空èªå¨ä»æ°æ®æº JDBC URL è§£æ username: root # å¤ä»½è´¦å·ï¼çç©ºä½¿ç¨æ°æ®æºè´¦å· password: 'xd@123456..' # å¤ä»½å¯ç ï¼çç©ºä½¿ç¨æ°æ®æºå¯ç command: # mysqldump å½ä»¤ï¼ç空èªå¨æ£æµé¨ç½²ç¯å¢ï¼æ¬æº mysqldump æ Docker MySQL 容å¨ï¼ï¼å¯æå¨æå®ï¼å¦ï¼docker exec mysql8 mysqldump yudao-server/src/main/resources/application-zyzp.yaml
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,237 @@ server: port: 48080 --- #################### æ°æ®åºç¸å ³é ç½® #################### spring: autoconfigure: # noinspection SpringBootApplicationYaml exclude: - org.springframework.boot.autoconfigure.quartz.QuartzAutoConfiguration # é»è®¤ local ç¯å¢ï¼ä¸å¼å¯ Quartz çèªå¨é ç½® - org.springframework.ai.vectorstore.qdrant.autoconfigure.QdrantVectorStoreAutoConfiguration # ç¦ç¨ AI 模åç Qdrantï¼æå¨å建 - org.springframework.ai.vectorstore.redis.autoconfigure.RedisVectorStoreAutoConfiguration # ç¦ç¨ AI 模åç Redisï¼æå¨å建 - org.springframework.ai.vectorstore.milvus.autoconfigure.MilvusVectorStoreAutoConfiguration # ç¦ç¨ AI 模åç Milvusï¼æå¨å建 - org.dromara.trans.config.TransServiceConfig # TODO èè¿ï¼easy-trans å ¼å®¹ Spring Boot 4 åç§»é¤ï¼TransServiceConfig å¼ç¨äºå·²ç§»é¤ç RestTemplateBuilderï¼ # ç¦ç¨æªé ç½® API Key çæ¨¡åèªå¨é ç½®ï¼åªä¿çéä¹åé® Embedding çæå¨é ç½®ï¼ - org.springframework.ai.model.openai.autoconfigure.OpenAiChatAutoConfiguration - org.springframework.ai.model.openai.autoconfigure.OpenAiEmbeddingAutoConfiguration - org.springframework.ai.model.openai.autoconfigure.OpenAiImageAutoConfiguration - org.springframework.ai.model.openai.autoconfigure.OpenAiAudioSpeechAutoConfiguration - org.springframework.ai.model.openai.autoconfigure.OpenAiAudioTranscriptionAutoConfiguration - org.springframework.ai.model.openai.autoconfigure.OpenAiModerationAutoConfiguration - org.springframework.ai.model.deepseek.autoconfigure.DeepSeekChatAutoConfiguration - org.springframework.ai.model.anthropic.autoconfigure.AnthropicChatAutoConfiguration - org.springframework.ai.model.google.genai.autoconfigure.chat.GoogleGenAiChatAutoConfiguration - org.springframework.ai.model.google.genai.autoconfigure.embedding.GoogleGenAiEmbeddingConnectionAutoConfiguration - org.springframework.ai.model.google.genai.autoconfigure.embedding.GoogleGenAiTextEmbeddingAutoConfiguration - org.springframework.ai.model.ollama.autoconfigure.OllamaApiAutoConfiguration - org.springframework.ai.model.ollama.autoconfigure.OllamaChatAutoConfiguration - org.springframework.ai.model.ollama.autoconfigure.OllamaEmbeddingAutoConfiguration - org.springframework.ai.model.stabilityai.autoconfigure.StabilityAiImageAutoConfiguration # æ°æ®æºé 置项 datasource: druid: # Druid ãçæ§ãç¸å ³çå ¨å±é ç½® web-stat-filter: enabled: true stat-view-servlet: enabled: true allow: # 设置ç½ååï¼ä¸å¡«åå 许ææè®¿é® url-pattern: /druid/* login-username: # æ§å¶å°ç®¡çç¨æ·ååå¯ç login-password: filter: stat: enabled: true log-slow-sql: true # æ ¢ SQL è®°å½ slow-sql-millis: 100 merge-sql: true wall: config: multi-statement-allow: true dynamic: # 夿°æ®æºé ç½® druid: # Druid ãè¿æ¥æ± ãç¸å ³çå ¨å±é ç½® initial-size: 1 # åå§è¿æ¥æ° min-idle: 1 # æå°è¿æ¥æ± æ°é max-active: 20 # æå¤§è¿æ¥æ± æ°é max-wait: 60000 # é ç½®è·åè¿æ¥çå¾ è¶ æ¶çæ¶é´ï¼åä½ï¼æ¯«ç§ï¼1 åéï¼ time-between-eviction-runs-millis: 60000 # é ç½®é´éå¤ä¹ æè¿è¡ä¸æ¬¡æ£æµï¼æ£æµéè¦å ³éç空é²è¿æ¥ï¼åä½ï¼æ¯«ç§ï¼1 åéï¼ min-evictable-idle-time-millis: 600000 # é ç½®ä¸ä¸ªè¿æ¥å¨æ± 䏿å°çåçæ¶é´ï¼åä½ï¼æ¯«ç§ï¼10 åéï¼ max-evictable-idle-time-millis: 1800000 # é ç½®ä¸ä¸ªè¿æ¥å¨æ± 䏿大çåçæ¶é´ï¼åä½ï¼æ¯«ç§ï¼30 åéï¼ validation-query: SELECT 1 FROM DUAL # é ç½®æ£æµè¿æ¥æ¯å¦ææ test-while-idle: true test-on-borrow: false test-on-return: false pool-prepared-statements: true # æ¯å¦å¼å¯ PreparedStatement ç¼å max-pool-prepared-statement-per-connection-size: 20 # æ¯ä¸ªè¿æ¥ç¼åç PreparedStatement æ°é primary: master datasource: master: url: jdbc:mysql://172.17.0.1:10000/mom-zyzp?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true&rewriteBatchedStatements=true # MySQL Connector/J 8.X è¿æ¥çç¤ºä¾ username: root password: xd@123456.. # Redis é ç½®ãRedisson é»è®¤çé 置足å¤ä½¿ç¨ï¼ä¸è¬ä¸éè¦è¿è¡è°ä¼ data: redis: host: 172.17.0.1 # å°å port: 9999 # ç«¯å£ database: 11 # æ°æ®åºç´¢å¼ # password: dev # å¯ç ï¼å»ºè®®ç产ç¯å¢å¼å¯ --- #################### 宿¶ä»»å¡ç¸å ³é ç½® #################### # Quartz é 置项ï¼å¯¹åº QuartzProperties é 置类 spring: quartz: auto-startup: true # æ¬å°å¼åç¯å¢ï¼å°½éä¸è¦å¼å¯ Job scheduler-name: schedulerName # Scheduler ååãé»è®¤ä¸º schedulerName job-store-type: jdbc # Job åå¨å¨ç±»åãé»è®¤ä¸º memory 表示å åï¼å¯é jdbc ä½¿ç¨æ°æ®åºã wait-for-jobs-to-complete-on-shutdown: true # åºç¨å ³éæ¶ï¼æ¯å¦çå¾ å®æ¶ä»»å¡æ§è¡å®æãé»è®¤ä¸º false ï¼å»ºè®®è®¾ç½®ä¸º true properties: # æ·»å Quartz Scheduler éå 屿§ï¼æ´å¤å¯ä»¥ç http://www.quartz-scheduler.org/documentation/2.4.0-SNAPSHOT/configuration.html ææ¡£ org: quartz: # Scheduler ç¸å ³é ç½® scheduler: instanceName: schedulerName instanceId: AUTO # èªå¨çæ instance ID # JobStore ç¸å ³é ç½® jobStore: # JobStore å®ç°ç±»ãå¯è§å客ï¼https://blog.csdn.net/weixin_42458219/article/details/122247162 class: org.springframework.scheduling.quartz.LocalDataSourceJobStore isClustered: true # æ¯éç¾¤æ¨¡å¼ clusterCheckinInterval: 15000 # éç¾¤æ£æ¥é¢çï¼åä½ï¼æ¯«ç§ãé»è®¤ä¸º 15000ï¼å³ 15 ç§ misfireThreshold: 60000 # misfire éå¼ï¼åä½ï¼æ¯«ç§ã # çº¿ç¨æ± ç¸å ³é ç½® threadPool: threadCount: 25 # çº¿ç¨æ± 大å°ãé»è®¤ä¸º 10 ã threadPriority: 5 # 线ç¨ä¼å 级 class: org.quartz.simpl.SimpleThreadPool # çº¿ç¨æ± ç±»å jdbc: # ä½¿ç¨ JDBC ç JobStore çæ¶åï¼JDBC çé ç½® initialize-schema: NEVER # æ¯å¦èªå¨ä½¿ç¨ SQL åå§å Quartz è¡¨ç»æãè¿é设置æ never ï¼æä»¬æå¨åå»ºè¡¨ç»æã --- #################### æå¡ä¿éç¸å ³é ç½® #################### # Lock4j é 置项 lock4j: acquire-timeout: 3000 # è·ååå¸å¼éè¶ æ¶æ¶é´ï¼é»è®¤ä¸º 3000 æ¯«ç§ expire: 30000 # åå¸å¼éçè¶ æ¶æ¶é´ï¼é»è®¤ä¸º 30000 æ¯«ç§ --- #################### çæ§ç¸å ³é ç½® #################### # Actuator çæ§ç«¯ç¹çé 置项 management: endpoints: web: base-path: /actuator # Actuator æä¾ç API æ¥å£çæ ¹ç®å½ãé»è®¤ä¸º /actuator exposure: include: '*' # éè¦å¼æ¾ç端ç¹ãé»è®¤å¼åªæå¼ health å info 两个端ç¹ãéè¿è®¾ç½® * ï¼å¯ä»¥å¼æ¾ææç«¯ç¹ã # Spring Boot Admin é 置项 spring: boot: admin: # Spring Boot Admin Client 客æ·ç«¯çç¸å ³é ç½® client: url: http://127.0.0.1:${server.port}/${spring.boot.admin.context-path} # 设置 Spring Boot Admin Server å°å instance: service-host-type: IP # 注åå®ä¾æ¶ï¼ä¼å ä½¿ç¨ IP [IP, HOST_NAME, CANONICAL_HOST_NAME] username: admin password: admin # Spring Boot Admin Server æå¡ç«¯çç¸å ³é ç½® context-path: /admin # é ç½® Spring # å 许åµå ¥ iframe çååï¼æ¯æéé 符ï¼ï¼å®é é¨ç½²æ¶ï¼å¯ä»¥æ¹ä¸º "'self' [ä½ çå ¬ç½åå]" frame-ancestors: "'self' localhost localhost:48080 127.0.0.1 127.0.0.1:48080" # æ¥å¿æä»¶é ç½® logging: file: name: logs/${spring.application.name}.log # æ¥å¿æä»¶åï¼ç¸å¯¹äºé¡¹ç®æ ¹ç®å½ level: # é ç½®èªå·±åç MyBatis Mapper æå°æ¥å¿ cn.iocoder.yudao.module.bpm.dal.mysql: debug cn.iocoder.yudao.module.infra.dal.mysql: debug cn.iocoder.yudao.module.infra.dal.mysql.logger.ApiErrorLogMapper: INFO # é ç½® ApiErrorLogMapper çæ¥å¿çº§å«ä¸º infoï¼é¿å å GlobalExceptionHandler éå¤æå° cn.iocoder.yudao.module.infra.dal.mysql.job.JobLogMapper: INFO # é ç½® JobLogMapper çæ¥å¿çº§å«ä¸º info cn.iocoder.yudao.module.infra.dal.mysql.file.FileConfigMapper: INFO # é ç½® FileConfigMapper çæ¥å¿çº§å«ä¸º info cn.iocoder.yudao.module.system.dal.mysql: debug cn.iocoder.yudao.module.system.dal.mysql.sms.SmsChannelMapper: INFO # é ç½® SmsChannelMapper çæ¥å¿çº§å«ä¸º info cn.iocoder.yudao.module.member.dal.mysql: debug cn.iocoder.yudao.module.crm.dal.mysql: debug cn.iocoder.yudao.module.erp.dal.mysql: debug cn.iocoder.yudao.module.mes.dal.mysql: debug cn.iocoder.yudao.module.ai.dal.mysql: debug cn.iocoder.yudao.module.im.dal.mysql: debug org.springframework.context.support.PostProcessorRegistrationDelegate: ERROR # TODO èè¿ï¼å ç¦ç¨ï¼Spring Boot 3.X åå¨é¨åé误ç WARN æç¤º debug: false yudao: ai: timeout: 60s # 忬¡å¤§æ¨¡åè°ç¨è¶ æ¶ï¼ä¸è®¾çè¯æ¨¡åæéæ¶è¯·æ±ä¼ä¸ç´æèµ· vector-store: type: milvus # åéåºç±»åï¼milvus milvus: initialize-schema: true database-name: test collection-name: knowledge_segment_zyzp host: 36.213.90.123 port: 19530 --- #################### è¶ çº§ç®¡çåç¸å ³é ç½® #################### # è¶ çº§ç®¡çåé 置项ï¼è®¾ç½®å½åé¡¹ç®ææèªå®ä¹çé ç½® yudao: captcha: enable: false # æ¬å°ç¯å¢ï¼ææ¶å ³éå¾çéªè¯ç ï¼æ¹ä¾¿ç»å½çæ¥å£çæµè¯ï¼ security: mock-enable: true access-log: # è®¿é®æ¥å¿çé 置项 enable: false demo: false # å ³éæ¼ç¤ºæ¨¡å¼ storage: # æä»¶ä¸ä¼ é ç½® path: /data/javaWork/mom/file # æä»¶å卿 ¹ç®å½ url-prefix: /admin-api/system/storage-blob # URLè·¯å¾åç¼ domain: http://36.213.150.237:9024 # åååç¼ï¼æå®é ååé ç½®ï¼ï¼å端é 置好åä¸å¤ªå¯¹ç°å¨æ¯ç´è¿åç«¯ï¼ææè¦åç«¯ç«¯å£ expired: 120 # tokenè¿ææ¶é´ï¼åéï¼ use-limit: 10 # tokenä½¿ç¨æ¬¡æ°ä¸é jwt-secret: abcdefghijklmnopqrstuvwxyz0123456789ABCDEFG # JWTå¯é¥ compress: true # æ¯å¦å缩å¾ç need-compress-size: 10MB # 触åå缩çæä»¶å¤§å°éå¼ compress-quality: 0.5 # å缩质é(0.0-1.0) qcreport: # æºè½è´¨æ£æ¥å pdf: # PDF åºä»¶ï¼æå¡ç«¯è° Chromium ææ¥å HTML æå°æ PDF # é¨ç½²åç½®ï¼å®¹å¨å ï¼è§ç产 Dockerfile ç USER rootï¼ï¼ # 1) æµè§å¨ï¼å¤é¶æ®µæå»ºä» mcr.microsoft.com/playwright:v1.63.0-jammy é # COPY --from ååº /ms-playwright ä¸ç chromiumï¼è¯¥éååºåº§æ¯ Ubuntu 22.04/glibc 2.35ï¼ # ä¸è¿è¡éåä¸è´ï¼ãPlaywright ä¸ä¼æ¿ä½ ä¸è½½æµè§å¨ï¼è£ å¨å®¿ä¸»æºä¹æ²¡ç¨ï¼å¿ é¡»è¿éåï¼ # æå»ºæ«å°¾æå®è½¯é¾å° /usr/local/bin/chromiumï¼å¹¶ç¨ --version + ldd èªæ£ï¼ # è£ å¤±è´¥å°±ç´æ¥ä¸ææå»ºï¼ä¸æå°ç¨æ·ç¹å¯¼åºææ´é² # 2) 䏿åä½ï¼æ¥åæ£ææ¯ä¸æï¼ç¼º CJK åä½ä¼æææ¹æ¡ï¼éè£ fonts-wqy-zenhei / Noto Sans CJK # 3) 以 root è¿è¡ï¼Chromium ä¸å --no-sandbox ä¼ç´æ¥æç»å¯å¨ï¼å®¹å¨ /dev/shm é»è®¤ä» 64Mï¼ # è¿é --disable-dev-shm-usageï¼å¦å渲æå¤§æ¥åæ¶ä¼éæºå´© enabled: true # å ³æåå¯¼åºæ¥å£ä¼æç¡®æ¥ãæªå¯ç¨ãï¼è䏿¯æ 500 channel: '' # çç©ºï¼æ¹ç±ä¸é¢ç executable-path æå®éåå ç chromium executable-path: /usr/local/bin/chromium # éåå chromium çåºå®ä½ç½®ï¼ç± Dockerfile 建软é¾ä¿è¯ concurrency: 2 # åæ¶è¿è¡ç PDF 渲æä¸éï¼Chromium å¾åå åï¼ä¸è¦æ¾å¼ timeout-ms: 30000 # 忬¡æ¸²æè¶ æ¶ï¼æ¯«ç§ï¼ï¼åæ¶ä¹æ¯æéçå¹¶ååé¢çä¸é show-page-number: true # 页èæå°ã第 N 页 / å ± M 页ã browser-args: [ '--no-sandbox', '--disable-dev-shm-usage' ] # 容å¨å 以 root è¿è¡å¿ éï¼ä¸¤é¡¹é½ä¸è½å»æ ai-import: # AI å¯¼å ¥ï¼ä¸ä¼ æ¢ææ¥åæä»¶ï¼è¯å«ææ¨¡æ¿è稿 # é¨ç½²åç½®ï¼åºç¨æå¡å¨éè½åºç½è®¿é® DashScopeï¼éä¹åé®ï¼ãå ç½é¨ç½²è¯·æ enabled ç½® falseï¼ # æ¥å£ä¼æç¡®æ¥ãæªå¯ç¨ãè䏿¯ä¸ç´çå° AI è¶ æ¶ãæ¤å¤è¿éå¨ãAI 大模åãéé å¥½å¯¹è¯æ¨¡åä¸å¯é¥ã enabled: true max-files: 3 # 䏿¬¡æå¤å 个æä»¶ max-pages-per-file: 5 # åæä»¶é¡µæ°ä¸éï¼è¶ åºæ¥éè䏿¯é黿ªæ max-pages-per-request: 8 # 䏿¬¡è¯·æ±ç´¯è®¡é¡µæ°ä¸éï¼å¤æä»¶å å åçæ»é¸ï¼ max-duration-seconds: 180 # 䏿¬¡å¯¼å ¥æ»èæ¶ä¸éï¼ä¸¤æ¬¡è°ç¨ä¹é´æ£æ¥ï¼ï¼åç«¯è¶ æ¶é¡»æ¯å®å ä¸ yudao.ai.timeout æ´å®½ max-file-size-mb: 20 # åæä»¶å¤§å°ä¸é max-components: 200 # è¯å«åºçç»ä»¶æ»æ°ä¸éï¼è¶ åºæªæå¹¶å¨æç¤ºé说æ pdf-text-page-threshold: 30 # 平忝页å符æ°ä½äºæ¤å¼å³ææ«æä»¶é页转å¾è¯å« render-dpi: 200 # æ«æé¡µè½¬å¾ç DPIï¼ä½äº 200 䏿åå½¢ä¼ç³ max-xlsx-rows: 300 # Excel å表æå¤è¯»åçè¡æ° database-backup: # æ°æ®åºå¤ä»½é ç½® host: 172.17.0.1 # å¤ä»½ç®æ MySQL 主æºï¼ç空èªå¨ä»æ°æ®æº JDBC URL è§£æ port: 9002 # å¤ä»½ç®æ MySQL 端å£ï¼ç空èªå¨ä»æ°æ®æº JDBC URL è§£æ database: mom-zyzp # å¤ä»½ç®æ æ°æ®åºï¼ç空èªå¨ä»æ°æ®æº JDBC URL è§£æ username: root # å¤ä»½è´¦å·ï¼çç©ºä½¿ç¨æ°æ®æºè´¦å· password: 'xd@123456..' # å¤ä»½å¯ç ï¼çç©ºä½¿ç¨æ°æ®æºå¯ç command: # mysqldump å½ä»¤ï¼ç空èªå¨æ£æµé¨ç½²ç¯å¢ï¼æ¬æº mysqldump æ Docker MySQL 容å¨ï¼ï¼å¯æå¨æå®ï¼å¦ï¼docker exec mysql8 mysqldump