Files
OpenCode 68a9071cf1 feat: reconcile local master with origin (exa/hot-platform hunters, leaks ledger, latest results)
Local branch had diverged from origin/master (sibling commits on the same base). Rewrote local history linearly on top of origin/master, folding in all local content: exa/hot-platform discovery hunters, leaks ledger, nightly sweep orchestrator, updated .gitignore and skill docs, plus the latest hunt output and vault state. Remote-only files (vault keys, channel scripts) were restored rather than dropped, so the resulting tree is a full union of both sides.
2026-08-07 12:53:47 +08:00

1 line
125 KiB
JSON
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{"repo": "choco-emmm/moodcopilot", "files": {"backend/moodcopilot/src/main/resources/application.yaml": {"a717f843c1ead3557db15b2ce3238391caf68185": {"t": 1785745208.939765, "n": 3452, "h": "dfb0149951e58e62", "c": "server:\r\n port: 18080\r\nspring:\r\n profiles:\r\n include: prompts\r\n threads:\r\n virtual:\r\n enabled: true\r\n mvc:\r\n async:\r\n request-timeout: 120000\r\n servlet:\r\n multipart:\r\n max-file-size: 20MB\r\n max-request-size: 20MB\r\n application:\r\n name: moodcopilot\r\n data:\r\n # redis配置\r\n redis:\r\n host: ${REDIS_HOST:localhost}\r\n port: ${REDIS_PORT:6379}\r\n password: ${REDIS_PASSWORD:}\r\n lettuce:\r\n pool:\r\n max-active: 100\r\n max-idle: 20\r\n min-idle: 5\r\n time-between-eviction-runs: 30s\r\n #数据库的连接信息\r\n datasource:\r\n # url: jdbc:mysql://localhost:3306/dems\r\n url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:moodcopilot}?serverTimezone=Asia/Shanghai\r\n username: ${DB_USERNAME:root}\r\n password: ${DB_PASSWORD:}\r\n driver-class-name: com.mysql.cj.jdbc.Driver\r\n hikari:\r\n maximum-pool-size: 100\r\n minimum-idle: 5\r\n connection-timeout: 5000\r\n idle-timeout: 300000\r\n max-lifetime: 600000\r\n leak-detection-threshold: 10000\r\n flyway:\r\n enabled: true\r\n clean-disabled: true\r\n baseline-on-migrate: true\r\n validate-on-migrate: false\r\n locations: classpath:db/migration\r\n cache:\r\n type: redis\r\n redis:\r\n time-to-live: 120000\r\n cache-null-values: false\r\n ai:\r\n retry:\r\n max-attempts: 5\r\n backoff:\r\n initial-interval: 2000\r\n multiplier: 2\r\n max-interval: 30000\r\n openai:\r\n api-key: ${DEEPSEEK_API_KEY:}\r\n base-url: ${DEEPSEEK_BASE_URL:https://api.deepseek.com}\r\n chat:\r\n options:\r\n model: ${DEEPSEEK_MODEL:deepseek-v4-flash}\r\n max-tokens: 8192\r\n rag:\r\n embedding:\r\n api-url: ${RAG_EMBEDDING_API_URL:https://api.siliconflow.cn/v1/embeddings}\r\n api-key: ${SILICONFLOW_API_KEY:}\r\n model: ${RAG_EMBEDDING_MODEL:BAAI/bge-m3}\r\n dimension: 1024\r\n mail:\r\n protocol: ${MAIL_PROTOCOL:smtp}\r\n host: ${MAIL_HOST:smtp.qq.com}\r\n port: 465\r\n username: ${MAIL_USERNAME:your-email@qq.com}\r\n password: ${MAIL_PASSWORD:your-smtp-auth-code}\r\n default-encoding: UTF-8\r\n properties:\r\n mail:\r\n smtp:\r\n auth: true\r\n ssl:\r\n enable: true\r\n trust: \"*\"\r\n timeout: 15000\r\n connectiontimeout: 15000\r\n writetimeout: 15000\r\n jackson:\r\n time-zone: Asia/Shanghai\r\njwt:\r\n secret: ${JWT_SECRET}\r\n expiration: 86400000\r\ncors:\r\n allowed-origins: ${CORS_ALLOWED_ORIGINS:https://moodcopilot.dpdns.org,http://localhost:5173,http://localhost:5174}\r\ncaptcha:\r\n init-default-resource: true\r\n secondary:\r\n enabled: true\r\n expire: 120000\r\n keyPrefix: \"captcha:secondary\"\r\noss:\r\n endpoint: ${OSS_ENDPOINT:oss-cn-guangzhou.aliyuncs.com}\r\n bucket: ${OSS_BUCKET:moodcopilot}\r\n access-key: ${OSS_ACCESS_KEY:}\r\n secret-key: ${OSS_SECRET_KEY:}\r\nmoodcopilot:\r\n vision:\r\n api-key: ${VISION_API_KEY:}\r\n api-url: ${VISION_API_URL:https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions}\r\n model: ${VISION_MODEL:qwen3-vl-flash}\r\n ocr-model: ${VISION_OCR_MODEL:qwen-vl-ocr-latest}\r\n enable-ocr-for-text-images: ${VISION_ENABLE_OCR:true}\r\n wechat:\r\n miniapp:\r\n app-id: ${WX_APP_ID:}\r\n app-secret: ${WX_APP_SECRET:}\r\n#Mybatis相关配置\r\nmybatis-plus:\r\n map-underscore-to-camel-case: true\r\n global-config:\r\n db-config:\r\n id-type: auto # 全局设置主键生成策略为数据库自增\r\n"}, "4ab14a6aa53ef56412b0ec049a61acba9816dd01": {"t": 1785748674.0954494, "n": 3452, "h": "dfb0149951e58e62", "c": "server:\r\n port: 18080\r\nspring:\r\n profiles:\r\n include: prompts\r\n threads:\r\n virtual:\r\n enabled: true\r\n mvc:\r\n async:\r\n request-timeout: 120000\r\n servlet:\r\n multipart:\r\n max-file-size: 20MB\r\n max-request-size: 20MB\r\n application:\r\n name: moodcopilot\r\n data:\r\n # redis配置\r\n redis:\r\n host: ${REDIS_HOST:localhost}\r\n port: ${REDIS_PORT:6379}\r\n password: ${REDIS_PASSWORD:}\r\n lettuce:\r\n pool:\r\n max-active: 100\r\n max-idle: 20\r\n min-idle: 5\r\n time-between-eviction-runs: 30s\r\n #数据库的连接信息\r\n datasource:\r\n # url: jdbc:mysql://localhost:3306/dems\r\n url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:moodcopilot}?serverTimezone=Asia/Shanghai\r\n username: ${DB_USERNAME:root}\r\n password: ${DB_PASSWORD:}\r\n driver-class-name: com.mysql.cj.jdbc.Driver\r\n hikari:\r\n maximum-pool-size: 100\r\n minimum-idle: 5\r\n connection-timeout: 5000\r\n idle-timeout: 300000\r\n max-lifetime: 600000\r\n leak-detection-threshold: 10000\r\n flyway:\r\n enabled: true\r\n clean-disabled: true\r\n baseline-on-migrate: true\r\n validate-on-migrate: false\r\n locations: classpath:db/migration\r\n cache:\r\n type: redis\r\n redis:\r\n time-to-live: 120000\r\n cache-null-values: false\r\n ai:\r\n retry:\r\n max-attempts: 5\r\n backoff:\r\n initial-interval: 2000\r\n multiplier: 2\r\n max-interval: 30000\r\n openai:\r\n api-key: ${DEEPSEEK_API_KEY:}\r\n base-url: ${DEEPSEEK_BASE_URL:https://api.deepseek.com}\r\n chat:\r\n options:\r\n model: ${DEEPSEEK_MODEL:deepseek-v4-flash}\r\n max-tokens: 8192\r\n rag:\r\n embedding:\r\n api-url: ${RAG_EMBEDDING_API_URL:https://api.siliconflow.cn/v1/embeddings}\r\n api-key: ${SILICONFLOW_API_KEY:}\r\n model: ${RAG_EMBEDDING_MODEL:BAAI/bge-m3}\r\n dimension: 1024\r\n mail:\r\n protocol: ${MAIL_PROTOCOL:smtp}\r\n host: ${MAIL_HOST:smtp.qq.com}\r\n port: 465\r\n username: ${MAIL_USERNAME:your-email@qq.com}\r\n password: ${MAIL_PASSWORD:your-smtp-auth-code}\r\n default-encoding: UTF-8\r\n properties:\r\n mail:\r\n smtp:\r\n auth: true\r\n ssl:\r\n enable: true\r\n trust: \"*\"\r\n timeout: 15000\r\n connectiontimeout: 15000\r\n writetimeout: 15000\r\n jackson:\r\n time-zone: Asia/Shanghai\r\njwt:\r\n secret: ${JWT_SECRET}\r\n expiration: 86400000\r\ncors:\r\n allowed-origins: ${CORS_ALLOWED_ORIGINS:https://moodcopilot.dpdns.org,http://localhost:5173,http://localhost:5174}\r\ncaptcha:\r\n init-default-resource: true\r\n secondary:\r\n enabled: true\r\n expire: 120000\r\n keyPrefix: \"captcha:secondary\"\r\noss:\r\n endpoint: ${OSS_ENDPOINT:oss-cn-guangzhou.aliyuncs.com}\r\n bucket: ${OSS_BUCKET:moodcopilot}\r\n access-key: ${OSS_ACCESS_KEY:}\r\n secret-key: ${OSS_SECRET_KEY:}\r\nmoodcopilot:\r\n vision:\r\n api-key: ${VISION_API_KEY:}\r\n api-url: ${VISION_API_URL:https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions}\r\n model: ${VISION_MODEL:qwen3-vl-flash}\r\n ocr-model: ${VISION_OCR_MODEL:qwen-vl-ocr-latest}\r\n enable-ocr-for-text-images: ${VISION_ENABLE_OCR:true}\r\n wechat:\r\n miniapp:\r\n app-id: ${WX_APP_ID:}\r\n app-secret: ${WX_APP_SECRET:}\r\n#Mybatis相关配置\r\nmybatis-plus:\r\n map-underscore-to-camel-case: true\r\n global-config:\r\n db-config:\r\n id-type: auto # 全局设置主键生成策略为数据库自增\r\n"}, "0a05a76d61cf1ad8bc5aee6e683dcee453738b12": {"t": 1785748675.2105298, "n": 3401, "h": "d4dd072e9dd79383", "c": "server:\r\n port: 18080\r\nspring:\r\n profiles:\r\n include: prompts\r\n threads:\r\n virtual:\r\n enabled: true\r\n mvc:\r\n async:\r\n request-timeout: 120000\r\n servlet:\r\n multipart:\r\n max-file-size: 20MB\r\n max-request-size: 20MB\r\n application:\r\n name: moodcopilot\r\n data:\r\n # redis配置\r\n redis:\r\n host: ${REDIS_HOST:localhost}\r\n port: ${REDIS_PORT:6379}\r\n password: ${REDIS_PASSWORD:}\r\n lettuce:\r\n pool:\r\n max-active: 100\r\n max-idle: 20\r\n min-idle: 5\r\n time-between-eviction-runs: 30s\r\n #数据库的连接信息\r\n datasource:\r\n # url: jdbc:mysql://localhost:3306/dems\r\n url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:moodcopilot}?serverTimezone=Asia/Shanghai\r\n username: ${DB_USERNAME:root}\r\n password: ${DB_PASSWORD:}\r\n driver-class-name: com.mysql.cj.jdbc.Driver\r\n hikari:\r\n maximum-pool-size: 100\r\n minimum-idle: 5\r\n connection-timeout: 5000\r\n idle-timeout: 300000\r\n max-lifetime: 600000\r\n leak-detection-threshold: 10000\r\n flyway:\r\n enabled: true\r\n clean-disabled: true\r\n baseline-on-migrate: true\r\n validate-on-migrate: false\r\n locations: classpath:db/migration\r\n cache:\r\n type: redis\r\n redis:\r\n time-to-live: 120000\r\n cache-null-values: false\r\n ai:\r\n retry:\r\n max-attempts: 5\r\n backoff:\r\n initial-interval: 2000\r\n multiplier: 2\r\n max-interval: 30000\r\n openai:\r\n api-key: ${DEEPSEEK_API_KEY:}\r\n base-url: ${DEEPSEEK_BASE_URL:https://api.deepseek.com}\r\n chat:\r\n options:\r\n model: ${DEEPSEEK_MODEL:deepseek-v4-flash}\r\n max-tokens: 8192\r\n rag:\r\n embedding:\r\n api-url: ${RAG_EMBEDDING_API_URL:https://api.siliconflow.cn/v1/embeddings}\r\n api-key: ${SILICONFLOW_API_KEY:}\r\n model: ${RAG_EMBEDDING_MODEL:BAAI/bge-m3}\r\n dimension: 1024\r\n mail:\r\n protocol: ${MAIL_PROTOCOL:smtp}\r\n host: ${MAIL_HOST:smtp.qq.com}\r\n port: ${MAIL_PORT:587}\r\n username: ${MAIL_USERNAME:your-email@qq.com}\r\n password: ${MAIL_PASSWORD:your-smtp-auth-code}\r\n default-encoding: UTF-8\r\n properties:\r\n mail:\r\n smtp:\r\n auth: true\r\n starttls:\r\n enable: true\r\n required: true\r\n ssl:\r\n trust: \"*\"\r\n timeout: 15000\r\n connectiontimeout: 15000\r\n writetimeout: 15000\r\n jackson:\r\n time-zone: Asia/Shanghai\r\njwt:\r\n secret: ${JWT_SECRET}\r\n expiration: 86400000\r\ncors:\r\n allowed-origins: ${CORS_ALLOWED_ORIGINS:https://moodcopilot.dpdns.org,http://localhost:5173}\r\ncaptcha:\r\n init-default-resource: true\r\n secondary:\r\n enabled: true\r\n expire: 120000\r\n keyPrefix: \"captcha:secondary\"\r\noss:\r\n endpoint: ${OSS_ENDPOINT:oss-cn-guangzhou.aliyuncs.com}\r\n bucket: ${OSS_BUCKET:moodcopilot}\r\n access-key: ${OSS_ACCESS_KEY:}\r\n secret-key: ${OSS_SECRET_KEY:}\r\nmoodcopilot:\r\n vision:\r\n api-key: ${VISION_API_KEY:}\r\n api-url: ${VISION_API_URL:https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions}\r\n model: ${VISION_MODEL:qwen3-vl-flash}\r\n ocr-model: ${VISION_OCR_MODEL:qwen-vl-ocr-latest}\r\n enable-ocr-for-text-images: ${VISION_ENABLE_OCR:true}\r\n#Mybatis相关配置\r\nmybatis-plus:\r\n map-underscore-to-camel-case: true\r\n global-config:\r\n db-config:\r\n id-type: auto # 全局设置主键生成策略为数据库自增\r\n"}, "42d895199f71b7f475e3e6b651a9157aa65d33b1": {"t": 1785748676.671186, "n": 3304, "h": "6996cc6f12222150", "c": "server:\r\n port: 18080\r\nspring:\r\n profiles:\r\n include: prompts\r\n threads:\r\n virtual:\r\n enabled: true\r\n mvc:\r\n async:\r\n request-timeout: 120000\r\n servlet:\r\n multipart:\r\n max-file-size: 20MB\r\n max-request-size: 20MB\r\n application:\r\n name: moodcopilot\r\n data:\r\n # redis配置\r\n redis:\r\n host: ${REDIS_HOST:localhost}\r\n port: ${REDIS_PORT:6379}\r\n password: ${REDIS_PASSWORD:}\r\n lettuce:\r\n pool:\r\n max-active: 100\r\n max-idle: 20\r\n min-idle: 5\r\n time-between-eviction-runs: 30s\r\n #数据库的连接信息\r\n datasource:\r\n # url: jdbc:mysql://localhost:3306/dems\r\n url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:moodcopilot}?serverTimezone=Asia/Shanghai\r\n username: ${DB_USERNAME:root}\r\n password: ${DB_PASSWORD:}\r\n driver-class-name: com.mysql.cj.jdbc.Driver\r\n hikari:\r\n maximum-pool-size: 100\r\n minimum-idle: 5\r\n connection-timeout: 5000\r\n idle-timeout: 300000\r\n max-lifetime: 600000\r\n leak-detection-threshold: 10000\r\n flyway:\r\n enabled: true\r\n clean-disabled: true\r\n baseline-on-migrate: true\r\n validate-on-migrate: false\r\n locations: classpath:db/migration\r\n cache:\r\n type: redis\r\n redis:\r\n time-to-live: 120000\r\n cache-null-values: false\r\n ai:\r\n retry:\r\n max-attempts: 5\r\n backoff:\r\n initial-interval: 2000\r\n multiplier: 2\r\n max-interval: 30000\r\n openai:\r\n api-key: ${DEEPSEEK_API_KEY:}\r\n base-url: ${DEEPSEEK_BASE_URL:https://api.deepseek.com}\r\n chat:\r\n options:\r\n model: ${DEEPSEEK_MODEL:deepseek-v4-flash}\r\n max-tokens: 8192\r\n rag:\r\n embedding:\r\n api-url: ${RAG_EMBEDDING_API_URL:https://api.siliconflow.cn/v1/embeddings}\r\n api-key: ${SILICONFLOW_API_KEY:}\r\n model: ${RAG_EMBEDDING_MODEL:BAAI/bge-m3}\r\n dimension: 1024\r\n mail:\r\n host: ${MAIL_HOST:smtp.qq.com}\r\n port: ${MAIL_PORT:465}\r\n username: ${MAIL_USERNAME:your-email@qq.com}\r\n password: ${MAIL_PASSWORD:your-smtp-auth-code}\r\n default-encoding: UTF-8\r\n properties:\r\n mail:\r\n smtp:\r\n auth: true\r\n starttls:\r\n enable: false\r\n socketFactory:\r\n class: javax.net.ssl.SSLSocketFactory\r\n port: 465\r\n jackson:\r\n time-zone: Asia/Shanghai\r\njwt:\r\n secret: ${JWT_SECRET}\r\n expiration: 86400000\r\ncors:\r\n allowed-origins: ${CORS_ALLOWED_ORIGINS:https://moodcopilot.dpdns.org,http://localhost:5173}\r\ncaptcha:\r\n init-default-resource: true\r\n secondary:\r\n enabled: true\r\n expire: 120000\r\n keyPrefix: \"captcha:secondary\"\r\noss:\r\n endpoint: ${OSS_ENDPOINT:oss-cn-guangzhou.aliyuncs.com}\r\n bucket: ${OSS_BUCKET:moodcopilot}\r\n access-key: ${OSS_ACCESS_KEY:}\r\n secret-key: ${OSS_SECRET_KEY:}\r\nmoodcopilot:\r\n vision:\r\n api-key: ${VISION_API_KEY:}\r\n api-url: ${VISION_API_URL:https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions}\r\n model: ${VISION_MODEL:qwen3-vl-flash}\r\n ocr-model: ${VISION_OCR_MODEL:qwen-vl-ocr-latest}\r\n enable-ocr-for-text-images: ${VISION_ENABLE_OCR:true}\r\n#Mybatis相关配置\r\nmybatis-plus:\r\n map-underscore-to-camel-case: true\r\n global-config:\r\n db-config:\r\n id-type: auto # 全局设置主键生成策略为数据库自增\r\n"}, "70cfb02d82e16a8ae18255ff0d11cb5bc8787976": {"t": 1785748677.7825582, "n": 3304, "h": "fdfa203059420b95", "c": "server:\r\n port: 18080\r\nspring:\r\n profiles:\r\n include: prompts\r\n threads:\r\n virtual:\r\n enabled: true\r\n mvc:\r\n async:\r\n request-timeout: 120000\r\n servlet:\r\n multipart:\r\n max-file-size: 10MB\r\n max-request-size: 10MB\r\n application:\r\n name: moodcopilot\r\n data:\r\n # redis配置\r\n redis:\r\n host: ${REDIS_HOST:localhost}\r\n port: ${REDIS_PORT:6379}\r\n password: ${REDIS_PASSWORD:}\r\n lettuce:\r\n pool:\r\n max-active: 100\r\n max-idle: 20\r\n min-idle: 5\r\n time-between-eviction-runs: 30s\r\n #数据库的连接信息\r\n datasource:\r\n # url: jdbc:mysql://localhost:3306/dems\r\n url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:moodcopilot}?serverTimezone=Asia/Shanghai\r\n username: ${DB_USERNAME:root}\r\n password: ${DB_PASSWORD:}\r\n driver-class-name: com.mysql.cj.jdbc.Driver\r\n hikari:\r\n maximum-pool-size: 100\r\n minimum-idle: 5\r\n connection-timeout: 5000\r\n idle-timeout: 300000\r\n max-lifetime: 600000\r\n leak-detection-threshold: 10000\r\n flyway:\r\n enabled: true\r\n clean-disabled: true\r\n baseline-on-migrate: true\r\n validate-on-migrate: false\r\n locations: classpath:db/migration\r\n cache:\r\n type: redis\r\n redis:\r\n time-to-live: 120000\r\n cache-null-values: false\r\n ai:\r\n retry:\r\n max-attempts: 5\r\n backoff:\r\n initial-interval: 2000\r\n multiplier: 2\r\n max-interval: 30000\r\n openai:\r\n api-key: ${DEEPSEEK_API_KEY:}\r\n base-url: ${DEEPSEEK_BASE_URL:https://api.deepseek.com}\r\n chat:\r\n options:\r\n model: ${DEEPSEEK_MODEL:deepseek-v4-flash}\r\n max-tokens: 8192\r\n rag:\r\n embedding:\r\n api-url: ${RAG_EMBEDDING_API_URL:https://api.siliconflow.cn/v1/embeddings}\r\n api-key: ${SILICONFLOW_API_KEY:}\r\n model: ${RAG_EMBEDDING_MODEL:BAAI/bge-m3}\r\n dimension: 1024\r\n mail:\r\n host: ${MAIL_HOST:smtp.qq.com}\r\n port: ${MAIL_PORT:465}\r\n username: ${MAIL_USERNAME:your-email@qq.com}\r\n password: ${MAIL_PASSWORD:your-smtp-auth-code}\r\n default-encoding: UTF-8\r\n properties:\r\n mail:\r\n smtp:\r\n auth: true\r\n starttls:\r\n enable: false\r\n socketFactory:\r\n class: javax.net.ssl.SSLSocketFactory\r\n port: 465\r\n jackson:\r\n time-zone: Asia/Shanghai\r\njwt:\r\n secret: ${JWT_SECRET}\r\n expiration: 86400000\r\ncors:\r\n allowed-origins: ${CORS_ALLOWED_ORIGINS:https://moodcopilot.dpdns.org,http://localhost:5173}\r\ncaptcha:\r\n init-default-resource: true\r\n secondary:\r\n enabled: true\r\n expire: 120000\r\n keyPrefix: \"captcha:secondary\"\r\noss:\r\n endpoint: ${OSS_ENDPOINT:oss-cn-guangzhou.aliyuncs.com}\r\n bucket: ${OSS_BUCKET:moodcopilot}\r\n access-key: ${OSS_ACCESS_KEY:}\r\n secret-key: ${OSS_SECRET_KEY:}\r\nmoodcopilot:\r\n vision:\r\n api-key: ${VISION_API_KEY:}\r\n api-url: ${VISION_API_URL:https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions}\r\n model: ${VISION_MODEL:qwen3-vl-flash}\r\n ocr-model: ${VISION_OCR_MODEL:qwen-vl-ocr-latest}\r\n enable-ocr-for-text-images: ${VISION_ENABLE_OCR:true}\r\n#Mybatis相关配置\r\nmybatis-plus:\r\n map-underscore-to-camel-case: true\r\n global-config:\r\n db-config:\r\n id-type: auto # 全局设置主键生成策略为数据库自增\r\n"}, "1c51c92c68d8d78664f5fbcb9576a1a06c2b6dde": {"t": 1785748678.9004698, "n": 3190, "h": "e35b7af27593dd28", "c": "server:\r\n port: 18080\r\nspring:\r\n profiles:\r\n include: prompts\r\n threads:\r\n virtual:\r\n enabled: true\r\n mvc:\r\n async:\r\n request-timeout: 120000\r\n servlet:\r\n multipart:\r\n max-file-size: 10MB\r\n max-request-size: 10MB\r\n application:\r\n name: moodcopilot\r\n data:\r\n # redis配置\r\n redis:\r\n host: ${REDIS_HOST:localhost}\r\n port: ${REDIS_PORT:6379}\r\n password: ${REDIS_PASSWORD:}\r\n lettuce:\r\n pool:\r\n max-active: 100\r\n max-idle: 20\r\n min-idle: 5\r\n time-between-eviction-runs: 30s\r\n #数据库的连接信息\r\n datasource:\r\n # url: jdbc:mysql://localhost:3306/dems\r\n url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:moodcopilot}?serverTimezone=Asia/Shanghai\r\n username: ${DB_USERNAME:root}\r\n password: ${DB_PASSWORD:}\r\n driver-class-name: com.mysql.cj.jdbc.Driver\r\n hikari:\r\n maximum-pool-size: 100\r\n minimum-idle: 5\r\n connection-timeout: 5000\r\n idle-timeout: 300000\r\n max-lifetime: 600000\r\n leak-detection-threshold: 10000\r\n flyway:\r\n enabled: true\r\n clean-disabled: true\r\n baseline-on-migrate: true\r\n validate-on-migrate: false\r\n locations: classpath:db/migration\r\n cache:\r\n type: redis\r\n redis:\r\n time-to-live: 120000\r\n cache-null-values: false\r\n ai:\r\n retry:\r\n max-attempts: 5\r\n backoff:\r\n initial-interval: 2000\r\n multiplier: 2\r\n max-interval: 30000\r\n openai:\r\n api-key: ${DEEPSEEK_API_KEY:}\r\n base-url: ${DEEPSEEK_BASE_URL:https://api.deepseek.com}\r\n chat:\r\n options:\r\n model: ${DEEPSEEK_MODEL:deepseek-v4-flash}\r\n max-tokens: 8192\r\n rag:\r\n embedding:\r\n api-url: ${RAG_EMBEDDING_API_URL:https://api.siliconflow.cn/v1/embeddings}\r\n api-key: ${SILICONFLOW_API_KEY:}\r\n model: ${RAG_EMBEDDING_MODEL:BAAI/bge-m3}\r\n dimension: 1024\r\n mail:\r\n host: ${MAIL_HOST:smtp.qq.com}\r\n port: ${MAIL_PORT:465}\r\n username: ${MAIL_USERNAME:your-email@qq.com}\r\n password: ${MAIL_PASSWORD:your-smtp-auth-code}\r\n default-encoding: UTF-8\r\n properties:\r\n mail:\r\n smtp:\r\n auth: true\r\n starttls:\r\n enable: false\r\n socketFactory:\r\n class: javax.net.ssl.SSLSocketFactory\r\n port: 465\r\n jackson:\r\n time-zone: Asia/Shanghai\r\njwt:\r\n secret: ${JWT_SECRET}\r\n expiration: 86400000\r\ncors:\r\n allowed-origins: ${CORS_ALLOWED_ORIGINS:https://moodcopilot.dpdns.org,http://localhost:5173}\r\ncaptcha:\r\n init-default-resource: true\r\n secondary:\r\n enabled: true\r\n expire: 120000\r\n keyPrefix: \"captcha:secondary\"\r\noss:\r\n endpoint: ${OSS_ENDPOINT:oss-cn-guangzhou.aliyuncs.com}\r\n bucket: ${OSS_BUCKET:moodcopilot}\r\n access-key: ${OSS_ACCESS_KEY:}\r\n secret-key: ${OSS_SECRET_KEY:}\r\nmoodcopilot:\r\n vision:\r\n api-key: ${VISION_API_KEY:}\r\n api-url: ${VISION_API_URL:https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions}\r\n model: ${VISION_MODEL:qwen3-vl-flash}\r\n#Mybatis相关配置\r\nmybatis-plus:\r\n map-underscore-to-camel-case: true\r\n global-config:\r\n db-config:\r\n id-type: auto # 全局设置主键生成策略为数据库自增\r\n"}, "fbb5691aa17fa1efee29aa5c9d296974f43b34f2": {"t": 1785748680.3735356, "n": 3155, "h": "1b0601827a566195", "c": "server:\r\n port: 18080\r\nspring:\r\n threads:\r\n virtual:\r\n enabled: true\r\n mvc:\r\n async:\r\n request-timeout: 120000\r\n servlet:\r\n multipart:\r\n max-file-size: 10MB\r\n max-request-size: 10MB\r\n application:\r\n name: moodcopilot\r\n data:\r\n # redis配置\r\n redis:\r\n host: ${REDIS_HOST:localhost}\r\n port: ${REDIS_PORT:6379}\r\n password: ${REDIS_PASSWORD:}\r\n lettuce:\r\n pool:\r\n max-active: 100\r\n max-idle: 20\r\n min-idle: 5\r\n time-between-eviction-runs: 30s\r\n #数据库的连接信息\r\n datasource:\r\n # url: jdbc:mysql://localhost:3306/dems\r\n url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:moodcopilot}?serverTimezone=Asia/Shanghai\r\n username: ${DB_USERNAME:root}\r\n password: ${DB_PASSWORD:}\r\n driver-class-name: com.mysql.cj.jdbc.Driver\r\n hikari:\r\n maximum-pool-size: 100\r\n minimum-idle: 5\r\n connection-timeout: 5000\r\n idle-timeout: 300000\r\n max-lifetime: 600000\r\n leak-detection-threshold: 10000\r\n flyway:\r\n enabled: true\r\n clean-disabled: true\r\n baseline-on-migrate: true\r\n validate-on-migrate: false\r\n locations: classpath:db/migration\r\n cache:\r\n type: redis\r\n redis:\r\n time-to-live: 120000\r\n cache-null-values: false\r\n ai:\r\n retry:\r\n max-attempts: 5\r\n backoff:\r\n initial-interval: 2000\r\n multiplier: 2\r\n max-interval: 30000\r\n openai:\r\n api-key: ${DEEPSEEK_API_KEY:}\r\n base-url: ${DEEPSEEK_BASE_URL:https://api.deepseek.com}\r\n chat:\r\n options:\r\n model: ${DEEPSEEK_MODEL:deepseek-v4-flash}\r\n max-tokens: 8192\r\n rag:\r\n embedding:\r\n api-url: ${RAG_EMBEDDING_API_URL:https://api.siliconflow.cn/v1/embeddings}\r\n api-key: ${SILICONFLOW_API_KEY:}\r\n model: ${RAG_EMBEDDING_MODEL:BAAI/bge-m3}\r\n dimension: 1024\r\n mail:\r\n host: ${MAIL_HOST:smtp.qq.com}\r\n port: ${MAIL_PORT:465}\r\n username: ${MAIL_USERNAME:your-email@qq.com}\r\n password: ${MAIL_PASSWORD:your-smtp-auth-code}\r\n default-encoding: UTF-8\r\n properties:\r\n mail:\r\n smtp:\r\n auth: true\r\n starttls:\r\n enable: false\r\n socketFactory:\r\n class: javax.net.ssl.SSLSocketFactory\r\n port: 465\r\n jackson:\r\n time-zone: Asia/Shanghai\r\njwt:\r\n secret: ${JWT_SECRET}\r\n expiration: 86400000\r\ncors:\r\n allowed-origins: ${CORS_ALLOWED_ORIGINS:https://moodcopilot.dpdns.org,http://localhost:5173}\r\ncaptcha:\r\n init-default-resource: true\r\n secondary:\r\n enabled: true\r\n expire: 120000\r\n keyPrefix: \"captcha:secondary\"\r\noss:\r\n endpoint: ${OSS_ENDPOINT:oss-cn-guangzhou.aliyuncs.com}\r\n bucket: ${OSS_BUCKET:moodcopilot}\r\n access-key: ${OSS_ACCESS_KEY:}\r\n secret-key: ${OSS_SECRET_KEY:}\r\nmoodcopilot:\r\n vision:\r\n api-key: ${VISION_API_KEY:}\r\n api-url: ${VISION_API_URL:https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions}\r\n model: ${VISION_MODEL:qwen3-vl-flash}\r\n#Mybatis相关配置\r\nmybatis-plus:\r\n map-underscore-to-camel-case: true\r\n global-config:\r\n db-config:\r\n id-type: auto # 全局设置主键生成策略为数据库自增\r\n"}, "0e5b537cfd339a480ef0f1f0560b2473a0787446": {"t": 1785748681.576729, "n": 3039, "h": "691c3e71adceb866", "c": "server:\n port: 18080\nspring:\n threads:\n virtual:\n enabled: true\n mvc:\n async:\n request-timeout: 120000\n servlet:\n multipart:\n max-file-size: 10MB\n max-request-size: 10MB\n application:\n name: moodcopilot\n data:\n # redis配置\n redis:\n host: ${REDIS_HOST:localhost}\n port: ${REDIS_PORT:6379}\n password: ${REDIS_PASSWORD:}\n lettuce:\n pool:\n max-active: 100\n max-idle: 20\n min-idle: 5\n time-between-eviction-runs: 30s\n #数据库的连接信息\n datasource:\n # url: jdbc:mysql://localhost:3306/dems\n url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:moodcopilot}?serverTimezone=Asia/Shanghai\n username: ${DB_USERNAME:root}\n password: ${DB_PASSWORD:}\n driver-class-name: com.mysql.cj.jdbc.Driver\n hikari:\n maximum-pool-size: 100\n minimum-idle: 5\n connection-timeout: 5000\n idle-timeout: 300000\n max-lifetime: 600000\n leak-detection-threshold: 10000\n flyway:\n enabled: true\n clean-disabled: true\n baseline-on-migrate: true\n validate-on-migrate: false\n locations: classpath:db/migration\n cache:\n type: redis\n redis:\n time-to-live: 120000\n cache-null-values: false\n ai:\n retry:\n max-attempts: 5\n backoff:\n initial-interval: 2000\n multiplier: 2\n max-interval: 30000\n openai:\n api-key: ${DEEPSEEK_API_KEY:}\n base-url: ${DEEPSEEK_BASE_URL:https://api.deepseek.com}\n chat:\n options:\n model: ${DEEPSEEK_MODEL:deepseek-v4-flash}\n max-tokens: 8192\n rag:\n embedding:\n api-url: ${RAG_EMBEDDING_API_URL:https://api.siliconflow.cn/v1/embeddings}\n api-key: ${SILICONFLOW_API_KEY:}\n model: ${RAG_EMBEDDING_MODEL:BAAI/bge-m3}\n dimension: 1024\n mail:\n host: ${MAIL_HOST:smtp.qq.com}\n port: ${MAIL_PORT:465}\n username: ${MAIL_USERNAME:your-email@qq.com}\n password: ${MAIL_PASSWORD:your-smtp-auth-code}\n default-encoding: UTF-8\n properties:\n mail:\n smtp:\n auth: true\n starttls:\n enable: false\n socketFactory:\n class: javax.net.ssl.SSLSocketFactory\n port: 465\n jackson:\n time-zone: Asia/Shanghai\njwt:\n secret: ${JWT_SECRET}\n expiration: 86400000\ncors:\n allowed-origins: ${CORS_ALLOWED_ORIGINS:https://moodcopilot.dpdns.org,http://localhost:5173}\ncaptcha:\n init-default-resource: true\n secondary:\n enabled: true\n expire: 120000\n keyPrefix: \"captcha:secondary\"\noss:\n endpoint: ${OSS_ENDPOINT:oss-cn-guangzhou.aliyuncs.com}\n bucket: ${OSS_BUCKET:moodcopilot}\n access-key: ${OSS_ACCESS_KEY:}\n secret-key: ${OSS_SECRET_KEY:}\nmoodcopilot:\n vision:\n api-key: ${VISION_API_KEY:}\n api-url: ${VISION_API_URL:https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions}\n model: ${VISION_MODEL:qwen3-vl-flash}\n#Mybatis相关配置\nmybatis-plus:\n map-underscore-to-camel-case: true\n global-config:\n db-config:\n id-type: auto # 全局设置主键生成策略为数据库自增\n"}, "1aaac10207ffa575f000ca56a10f566345d12196": {"t": 1785748683.4053588, "n": 2910, "h": "e1fada423794e90e", "c": "server:\n port: 18080\nspring:\n threads:\n virtual:\n enabled: true\n mvc:\n async:\n request-timeout: 120000\n servlet:\n multipart:\n max-file-size: 10MB\n max-request-size: 10MB\n application:\n name: moodcopilot\n data:\n # redis配置\n redis:\n host: ${REDIS_HOST:localhost}\n port: ${REDIS_PORT:6379}\n password: ${REDIS_PASSWORD:}\n lettuce:\n pool:\n max-active: 100\n max-idle: 20\n min-idle: 5\n time-between-eviction-runs: 30s\n #数据库的连接信息\n datasource:\n # url: jdbc:mysql://localhost:3306/dems\n url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:moodcopilot}?serverTimezone=Asia/Shanghai\n username: ${DB_USERNAME:root}\n password: ${DB_PASSWORD:}\n driver-class-name: com.mysql.cj.jdbc.Driver\n hikari:\n maximum-pool-size: 100\n minimum-idle: 5\n connection-timeout: 5000\n idle-timeout: 300000\n max-lifetime: 600000\n leak-detection-threshold: 10000\n flyway:\n enabled: true\n clean-disabled: true\n baseline-on-migrate: true\n validate-on-migrate: false\n locations: classpath:db/migration\n cache:\n type: redis\n redis:\n time-to-live: 120000\n cache-null-values: false\n ai:\n openai:\n api-key: ${DEEPSEEK_API_KEY:}\n base-url: ${DEEPSEEK_BASE_URL:https://api.deepseek.com}\n chat:\n options:\n model: ${DEEPSEEK_MODEL:deepseek-v4-flash}\n max-tokens: 8192\n rag:\n embedding:\n api-url: ${RAG_EMBEDDING_API_URL:https://api.siliconflow.cn/v1/embeddings}\n api-key: ${SILICONFLOW_API_KEY:}\n model: ${RAG_EMBEDDING_MODEL:BAAI/bge-m3}\n dimension: 1024\n mail:\n host: ${MAIL_HOST:smtp.qq.com}\n port: ${MAIL_PORT:465}\n username: ${MAIL_USERNAME:your-email@qq.com}\n password: ${MAIL_PASSWORD:your-smtp-auth-code}\n default-encoding: UTF-8\n properties:\n mail:\n smtp:\n auth: true\n starttls:\n enable: false\n socketFactory:\n class: javax.net.ssl.SSLSocketFactory\n port: 465\n jackson:\n time-zone: Asia/Shanghai\njwt:\n secret: ${JWT_SECRET}\n expiration: 86400000\ncors:\n allowed-origins: ${CORS_ALLOWED_ORIGINS:https://moodcopilot.dpdns.org,http://localhost:5173}\ncaptcha:\n init-default-resource: true\n secondary:\n enabled: true\n expire: 120000\n keyPrefix: \"captcha:secondary\"\noss:\n endpoint: ${OSS_ENDPOINT:oss-cn-guangzhou.aliyuncs.com}\n bucket: ${OSS_BUCKET:moodcopilot}\n access-key: ${OSS_ACCESS_KEY:}\n secret-key: ${OSS_SECRET_KEY:}\nmoodcopilot:\n vision:\n api-key: ${VISION_API_KEY:}\n api-url: ${VISION_API_URL:https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions}\n model: ${VISION_MODEL:qwen3-vl-flash}\n#Mybatis相关配置\nmybatis-plus:\n map-underscore-to-camel-case: true\n global-config:\n db-config:\n id-type: auto # 全局设置主键生成策略为数据库自增\n"}, "55f91f9073794779430879d7bbb662d36244acf5": {"t": 1785748684.4857798, "n": 2871, "h": "2e8f529e16ead6ae", "c": "server:\n port: 18080\nspring:\n threads:\n virtual:\n enabled: true\n mvc:\n async:\n request-timeout: 120000\n servlet:\n multipart:\n max-file-size: 10MB\n max-request-size: 10MB\n application:\n name: moodcopilot\n data:\n # redis配置\n redis:\n host: ${REDIS_HOST:localhost}\n port: ${REDIS_PORT:6379}\n password: ${REDIS_PASSWORD:}\n lettuce:\n pool:\n max-active: 100\n max-idle: 20\n min-idle: 5\n time-between-eviction-runs: 30s\n #数据库的连接信息\n datasource:\n # url: jdbc:mysql://localhost:3306/dems\n url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:moodcopilot}?serverTimezone=Asia/Shanghai\n username: ${DB_USERNAME:root}\n password: ${DB_PASSWORD:}\n driver-class-name: com.mysql.cj.jdbc.Driver\n hikari:\n maximum-pool-size: 100\n minimum-idle: 5\n connection-timeout: 5000\n idle-timeout: 300000\n max-lifetime: 600000\n leak-detection-threshold: 10000\n flyway:\n enabled: true\n clean-disabled: true\n baseline-on-migrate: true\n validate-on-migrate: false\n locations: classpath:db/migration\n cache:\n type: redis\n redis:\n time-to-live: 120000\n cache-null-values: false\n ai:\n openai:\n api-key: ${DEEPSEEK_API_KEY:}\n base-url: ${DEEPSEEK_BASE_URL:https://api.deepseek.com}\n chat:\n options:\n model: ${DEEPSEEK_MODEL:deepseek-v4-flash}\n max-tokens: 8192\n rag:\n embedding:\n api-url: ${RAG_EMBEDDING_API_URL:https://api.siliconflow.cn/v1/embeddings}\n api-key: ${SILICONFLOW_API_KEY:}\n model: ${RAG_EMBEDDING_MODEL:BAAI/bge-m3}\n dimension: 1024\n mail:\n host: ${MAIL_HOST:smtp.qq.com}\n port: ${MAIL_PORT:465}\n username: ${MAIL_USERNAME:your-email@qq.com}\n password: ${MAIL_PASSWORD:your-smtp-auth-code}\n default-encoding: UTF-8\n properties:\n mail:\n smtp:\n auth: true\n starttls:\n enable: false\n socketFactory:\n class: javax.net.ssl.SSLSocketFactory\n port: 465\n jackson:\n time-zone: Asia/Shanghai\njwt:\n secret: ${JWT_SECRET}\n expiration: 86400000\ncors:\n allowed-origins: ${CORS_ALLOWED_ORIGINS:https://moodcopilot.dpdns.org,http://localhost:5173}\nturnstile:\n secret-key: ${TURNSTILE_SECRET_KEY:}\n site-key: ${TURNSTILE_SITE_KEY:}\noss:\n endpoint: ${OSS_ENDPOINT:oss-cn-guangzhou.aliyuncs.com}\n bucket: ${OSS_BUCKET:moodcopilot}\n access-key: ${OSS_ACCESS_KEY:}\n secret-key: ${OSS_SECRET_KEY:}\nmoodcopilot:\n vision:\n api-key: ${VISION_API_KEY:}\n api-url: ${VISION_API_URL:https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions}\n model: ${VISION_MODEL:qwen3-vl-flash}\n#Mybatis相关配置\nmybatis-plus:\n map-underscore-to-camel-case: true\n global-config:\n db-config:\n id-type: auto # 全局设置主键生成策略为数据库自增\n"}, "a73f89686102fa1dc9612582c0a6fe645b036292": {"t": 1785748685.5729153, "n": 2825, "h": "3a74e4852ea9ca13", "c": "server:\n port: 18080\nspring:\n mvc:\n async:\n request-timeout: 120000\n servlet:\n multipart:\n max-file-size: 10MB\n max-request-size: 10MB\n application:\n name: moodcopilot\n data:\n # redis配置\n redis:\n host: ${REDIS_HOST:localhost}\n port: ${REDIS_PORT:6379}\n password: ${REDIS_PASSWORD:}\n lettuce:\n pool:\n max-active: 30\n max-idle: 20\n min-idle: 5\n time-between-eviction-runs: 30s\n #数据库的连接信息\n datasource:\n # url: jdbc:mysql://localhost:3306/dems\n url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:moodcopilot}?serverTimezone=Asia/Shanghai\n username: ${DB_USERNAME:root}\n password: ${DB_PASSWORD:}\n driver-class-name: com.mysql.cj.jdbc.Driver\n hikari:\n maximum-pool-size: 30\n minimum-idle: 5\n connection-timeout: 5000\n idle-timeout: 300000\n max-lifetime: 600000\n leak-detection-threshold: 10000\n flyway:\n enabled: true\n clean-disabled: true\n baseline-on-migrate: true\n validate-on-migrate: false\n locations: classpath:db/migration\n cache:\n type: redis\n redis:\n time-to-live: 120000\n cache-null-values: false\n ai:\n openai:\n api-key: ${DEEPSEEK_API_KEY:}\n base-url: ${DEEPSEEK_BASE_URL:https://api.deepseek.com}\n chat:\n options:\n model: ${DEEPSEEK_MODEL:deepseek-v4-flash}\n max-tokens: 8192\n rag:\n embedding:\n api-url: ${RAG_EMBEDDING_API_URL:https://api.siliconflow.cn/v1/embeddings}\n api-key: ${SILICONFLOW_API_KEY:}\n model: ${RAG_EMBEDDING_MODEL:BAAI/bge-m3}\n dimension: 1024\n mail:\n host: ${MAIL_HOST:smtp.qq.com}\n port: ${MAIL_PORT:465}\n username: ${MAIL_USERNAME:your-email@qq.com}\n password: ${MAIL_PASSWORD:your-smtp-auth-code}\n default-encoding: UTF-8\n properties:\n mail:\n smtp:\n auth: true\n starttls:\n enable: false\n socketFactory:\n class: javax.net.ssl.SSLSocketFactory\n port: 465\n jackson:\n time-zone: Asia/Shanghai\njwt:\n secret: ${JWT_SECRET}\n expiration: 86400000\ncors:\n allowed-origins: ${CORS_ALLOWED_ORIGINS:https://moodcopilot.dpdns.org,http://localhost:5173}\nturnstile:\n secret-key: ${TURNSTILE_SECRET_KEY:}\n site-key: ${TURNSTILE_SITE_KEY:}\noss:\n endpoint: ${OSS_ENDPOINT:oss-cn-guangzhou.aliyuncs.com}\n bucket: ${OSS_BUCKET:moodcopilot}\n access-key: ${OSS_ACCESS_KEY:}\n secret-key: ${OSS_SECRET_KEY:}\nmoodcopilot:\n vision:\n api-key: ${VISION_API_KEY:}\n api-url: ${VISION_API_URL:https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions}\n model: ${VISION_MODEL:qwen3-vl-flash}\n#Mybatis相关配置\nmybatis-plus:\n map-underscore-to-camel-case: true\n global-config:\n db-config:\n id-type: auto # 全局设置主键生成策略为数据库自增\n"}, "c61134ad89548ad23fb3b5b17330f7710963fca1": {"t": 1785748686.6573467, "n": 2825, "h": "e6964bb9f47b13f0", "c": "server:\n port: 18080\nspring:\n mvc:\n async:\n request-timeout: 120000\n servlet:\n multipart:\n max-file-size: 10MB\n max-request-size: 10MB\n application:\n name: moodcopilot\n data:\n # redis配置\n redis:\n host: ${REDIS_HOST:localhost}\n port: ${REDIS_PORT:6379}\n password: ${REDIS_PASSWORD:}\n lettuce:\n pool:\n max-active: 30\n max-idle: 20\n min-idle: 5\n time-between-eviction-runs: 30s\n #数据库的连接信息\n datasource:\n # url: jdbc:mysql://localhost:3306/dems\n url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:moodcopilot}?serverTimezone=Asia/Shanghai\n username: ${DB_USERNAME:root}\n password: ${DB_PASSWORD:}\n driver-class-name: com.mysql.cj.jdbc.Driver\n hikari:\n maximum-pool-size: 30\n minimum-idle: 5\n connection-timeout: 5000\n idle-timeout: 300000\n max-lifetime: 600000\n leak-detection-threshold: 10000\n flyway:\n enabled: true\n clean-disabled: true\n baseline-on-migrate: true\n validate-on-migrate: false\n locations: classpath:db/migration\n cache:\n type: redis\n redis:\n time-to-live: 120000\n cache-null-values: false\n ai:\n openai:\n api-key: ${DEEPSEEK_API_KEY:}\n base-url: ${DEEPSEEK_BASE_URL:https://api.deepseek.com}\n chat:\n options:\n model: ${DEEPSEEK_MODEL:deepseek-v4-flash}\n max-tokens: 2048\n rag:\n embedding:\n api-url: ${RAG_EMBEDDING_API_URL:https://api.siliconflow.cn/v1/embeddings}\n api-key: ${SILICONFLOW_API_KEY:}\n model: ${RAG_EMBEDDING_MODEL:BAAI/bge-m3}\n dimension: 1024\n mail:\n host: ${MAIL_HOST:smtp.qq.com}\n port: ${MAIL_PORT:465}\n username: ${MAIL_USERNAME:your-email@qq.com}\n password: ${MAIL_PASSWORD:your-smtp-auth-code}\n default-encoding: UTF-8\n properties:\n mail:\n smtp:\n auth: true\n starttls:\n enable: false\n socketFactory:\n class: javax.net.ssl.SSLSocketFactory\n port: 465\n jackson:\n time-zone: Asia/Shanghai\njwt:\n secret: ${JWT_SECRET}\n expiration: 86400000\ncors:\n allowed-origins: ${CORS_ALLOWED_ORIGINS:https://moodcopilot.dpdns.org,http://localhost:5173}\nturnstile:\n secret-key: ${TURNSTILE_SECRET_KEY:}\n site-key: ${TURNSTILE_SITE_KEY:}\noss:\n endpoint: ${OSS_ENDPOINT:oss-cn-guangzhou.aliyuncs.com}\n bucket: ${OSS_BUCKET:moodcopilot}\n access-key: ${OSS_ACCESS_KEY:}\n secret-key: ${OSS_SECRET_KEY:}\nmoodcopilot:\n vision:\n api-key: ${VISION_API_KEY:}\n api-url: ${VISION_API_URL:https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions}\n model: ${VISION_MODEL:qwen3-vl-flash}\n#Mybatis相关配置\nmybatis-plus:\n map-underscore-to-camel-case: true\n global-config:\n db-config:\n id-type: auto # 全局设置主键生成策略为数据库自增\n"}, "eacd9e7fde0878f85d0b496b0f5fc64e88059d96": {"t": 1785748687.7482147, "n": 2821, "h": "8f5c0793121a755f", "c": "server:\n port: 18080\nspring:\n mvc:\n async:\n request-timeout: 120000\n servlet:\n multipart:\n max-file-size: 10MB\n max-request-size: 10MB\n application:\n name: moodcopilot\n data:\n # redis配置\n redis:\n host: ${REDIS_HOST:localhost}\n port: ${REDIS_PORT:6379}\n password: ${REDIS_PASSWORD:}\n lettuce:\n pool:\n max-active: 30\n max-idle: 20\n min-idle: 5\n time-between-eviction-runs: 30s\n #数据库的连接信息\n datasource:\n # url: jdbc:mysql://localhost:3306/dems\n url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:moodcopilot}?serverTimezone=Asia/Shanghai\n username: ${DB_USERNAME:root}\n password: ${DB_PASSWORD:}\n driver-class-name: com.mysql.cj.jdbc.Driver\n hikari:\n maximum-pool-size: 30\n minimum-idle: 5\n connection-timeout: 5000\n idle-timeout: 300000\n max-lifetime: 600000\n leak-detection-threshold: 10000\n flyway:\n enabled: true\n clean-disabled: true\n baseline-on-migrate: true\n validate-on-migrate: false\n locations: classpath:db/migration\n cache:\n type: redis\n redis:\n time-to-live: 120000\n cache-null-values: false\n ai:\n openai:\n api-key: ${DEEPSEEK_API_KEY:}\n base-url: ${DEEPSEEK_BASE_URL:https://api.deepseek.com}\n chat:\n options:\n model: ${DEEPSEEK_MODEL:deepseek-chat}\n max-tokens: 2048\n rag:\n embedding:\n api-url: ${RAG_EMBEDDING_API_URL:https://api.siliconflow.cn/v1/embeddings}\n api-key: ${SILICONFLOW_API_KEY:}\n model: ${RAG_EMBEDDING_MODEL:BAAI/bge-m3}\n dimension: 1024\n mail:\n host: ${MAIL_HOST:smtp.qq.com}\n port: ${MAIL_PORT:465}\n username: ${MAIL_USERNAME:your-email@qq.com}\n password: ${MAIL_PASSWORD:your-smtp-auth-code}\n default-encoding: UTF-8\n properties:\n mail:\n smtp:\n auth: true\n starttls:\n enable: false\n socketFactory:\n class: javax.net.ssl.SSLSocketFactory\n port: 465\n jackson:\n time-zone: Asia/Shanghai\njwt:\n secret: ${JWT_SECRET}\n expiration: 86400000\ncors:\n allowed-origins: ${CORS_ALLOWED_ORIGINS:https://moodcopilot.dpdns.org,http://localhost:5173}\nturnstile:\n secret-key: ${TURNSTILE_SECRET_KEY:}\n site-key: ${TURNSTILE_SITE_KEY:}\noss:\n endpoint: ${OSS_ENDPOINT:oss-cn-guangzhou.aliyuncs.com}\n bucket: ${OSS_BUCKET:moodcopilot}\n access-key: ${OSS_ACCESS_KEY:}\n secret-key: ${OSS_SECRET_KEY:}\nmoodcopilot:\n vision:\n api-key: ${VISION_API_KEY:}\n api-url: ${VISION_API_URL:https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions}\n model: ${VISION_MODEL:qwen3-vl-flash}\n#Mybatis相关配置\nmybatis-plus:\n map-underscore-to-camel-case: true\n global-config:\n db-config:\n id-type: auto # 全局设置主键生成策略为数据库自增\n"}, "7e926f80692cba3b3f07343b163d689fc48b59bd": {"t": 1785748688.8511457, "n": 2626, "h": "be195ff23d1e3230", "c": "server:\n port: 18080\nspring:\n mvc:\n async:\n request-timeout: 120000\n servlet:\n multipart:\n max-file-size: 10MB\n max-request-size: 10MB\n application:\n name: moodcopilot\n data:\n # redis配置\n redis:\n host: ${REDIS_HOST:localhost}\n port: ${REDIS_PORT:6379}\n password: ${REDIS_PASSWORD:}\n lettuce:\n pool:\n max-active: 30\n max-idle: 20\n min-idle: 5\n time-between-eviction-runs: 30s\n #数据库的连接信息\n datasource:\n # url: jdbc:mysql://localhost:3306/dems\n url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:moodcopilot}?serverTimezone=Asia/Shanghai\n username: ${DB_USERNAME:root}\n password: ${DB_PASSWORD:}\n driver-class-name: com.mysql.cj.jdbc.Driver\n hikari:\n maximum-pool-size: 30\n minimum-idle: 5\n connection-timeout: 5000\n idle-timeout: 300000\n max-lifetime: 600000\n leak-detection-threshold: 10000\n flyway:\n enabled: true\n clean-disabled: true\n baseline-on-migrate: true\n validate-on-migrate: false\n locations: classpath:db/migration\n cache:\n type: redis\n redis:\n time-to-live: 120000\n cache-null-values: false\n ai:\n openai:\n api-key: ${DEEPSEEK_API_KEY:}\n base-url: ${DEEPSEEK_BASE_URL:https://api.deepseek.com}\n chat:\n options:\n model: ${DEEPSEEK_MODEL:deepseek-chat}\n max-tokens: 2048\n rag:\n embedding:\n api-url: ${RAG_EMBEDDING_API_URL:https://api.siliconflow.cn/v1/embeddings}\n api-key: ${SILICONFLOW_API_KEY:}\n model: ${RAG_EMBEDDING_MODEL:BAAI/bge-m3}\n dimension: 1024\n mail:\n host: ${MAIL_HOST:smtp.qq.com}\n port: ${MAIL_PORT:465}\n username: ${MAIL_USERNAME:your-email@qq.com}\n password: ${MAIL_PASSWORD:your-smtp-auth-code}\n default-encoding: UTF-8\n properties:\n mail:\n smtp:\n auth: true\n starttls:\n enable: false\n socketFactory:\n class: javax.net.ssl.SSLSocketFactory\n port: 465\n jackson:\n time-zone: Asia/Shanghai\njwt:\n secret: ${JWT_SECRET}\n expiration: 86400000\ncors:\n allowed-origins: ${CORS_ALLOWED_ORIGINS:https://moodcopilot.dpdns.org,http://localhost:5173}\nturnstile:\n secret-key: ${TURNSTILE_SECRET_KEY:}\n site-key: ${TURNSTILE_SITE_KEY:}\noss:\n endpoint: ${OSS_ENDPOINT:oss-cn-guangzhou.aliyuncs.com}\n bucket: ${OSS_BUCKET:moodcopilot}\n access-key: ${OSS_ACCESS_KEY:}\n secret-key: ${OSS_SECRET_KEY:}\n#Mybatis相关配置\nmybatis-plus:\n map-underscore-to-camel-case: true\n global-config:\n db-config:\n id-type: auto # 全局设置主键生成策略为数据库自增\n"}, "3313834038843fc47bf48bc617820d5dc5457a19": {"t": 1785748689.9228418, "n": 2461, "h": "7face6ae579ed504", "c": "server:\n port: 18080\nspring:\n mvc:\n async:\n request-timeout: 120000\n servlet:\n multipart:\n max-file-size: 10MB\n max-request-size: 10MB\n application:\n name: moodcopilot\n data:\n # redis配置\n redis:\n host: ${REDIS_HOST:localhost}\n port: ${REDIS_PORT:6379}\n password: ${REDIS_PASSWORD:}\n lettuce:\n pool:\n max-active: 30\n max-idle: 20\n min-idle: 5\n time-between-eviction-runs: 30s\n #数据库的连接信息\n datasource:\n # url: jdbc:mysql://localhost:3306/dems\n url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:moodcopilot}?serverTimezone=Asia/Shanghai\n username: ${DB_USERNAME:root}\n password: ${DB_PASSWORD:}\n driver-class-name: com.mysql.cj.jdbc.Driver\n hikari:\n maximum-pool-size: 30\n minimum-idle: 5\n connection-timeout: 5000\n idle-timeout: 300000\n max-lifetime: 600000\n leak-detection-threshold: 10000\n flyway:\n enabled: true\n clean-disabled: true\n baseline-on-migrate: true\n validate-on-migrate: false\n locations: classpath:db/migration\n cache:\n type: redis\n redis:\n time-to-live: 120000\n cache-null-values: false\n ai:\n openai:\n api-key: ${DEEPSEEK_API_KEY:}\n base-url: ${DEEPSEEK_BASE_URL:https://api.deepseek.com}\n chat:\n options:\n model: ${DEEPSEEK_MODEL:deepseek-chat}\n max-tokens: 2048\n rag:\n embedding:\n api-url: ${RAG_EMBEDDING_API_URL:https://api.siliconflow.cn/v1/embeddings}\n api-key: ${SILICONFLOW_API_KEY:}\n model: ${RAG_EMBEDDING_MODEL:BAAI/bge-m3}\n dimension: 1024\n mail:\n host: ${MAIL_HOST:smtp.qq.com}\n port: ${MAIL_PORT:465}\n username: ${MAIL_USERNAME:your-email@qq.com}\n password: ${MAIL_PASSWORD:your-smtp-auth-code}\n default-encoding: UTF-8\n properties:\n mail:\n smtp:\n auth: true\n starttls:\n enable: false\n socketFactory:\n class: javax.net.ssl.SSLSocketFactory\n port: 465\n jackson:\n time-zone: Asia/Shanghai\njwt:\n secret: ${JWT_SECRET}\n expiration: 86400000\ncors:\n allowed-origins: ${CORS_ALLOWED_ORIGINS:https://moodcopilot.dpdns.org,http://localhost:5173}\nturnstile:\n secret-key: ${TURNSTILE_SECRET_KEY:}\n site-key: ${TURNSTILE_SITE_KEY:}\n#Mybatis相关配置\nmybatis-plus:\n map-underscore-to-camel-case: true\n global-config:\n db-config:\n id-type: auto # 全局设置主键生成策略为数据库自增\n"}, "e4495ff3960513a300edef792533c171b8d19464": {"t": 1785748691.0343385, "n": 2460, "h": "cd4371dae1ed4a55", "c": "server:\n port: 18080\nspring:\n mvc:\n async:\n request-timeout: 120000\n servlet:\n multipart:\n max-file-size: 10MB\n max-request-size: 10MB\n application:\n name: moodcopilot\n data:\n # redis配置\n redis:\n host: ${REDIS_HOST:localhost}\n port: ${REDIS_PORT:6379}\n password: ${REDIS_PASSWORD:}\n lettuce:\n pool:\n max-active: 30\n max-idle: 20\n min-idle: 5\n time-between-eviction-runs: 30s\n #数据库的连接信息\n datasource:\n # url: jdbc:mysql://localhost:3306/dems\n url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:moodcopilot}?serverTimezone=Asia/Shanghai\n username: ${DB_USERNAME:root}\n password: ${DB_PASSWORD:}\n driver-class-name: com.mysql.cj.jdbc.Driver\n hikari:\n maximum-pool-size: 30\n minimum-idle: 5\n connection-timeout: 5000\n idle-timeout: 300000\n max-lifetime: 600000\n leak-detection-threshold: 10000\n flyway:\n enabled: true\n clean-disabled: true\n baseline-on-migrate: true\n validate-on-migrate: false\n locations: classpath:db/migration\n cache:\n type: redis\n redis:\n time-to-live: 120000\n cache-null-values: false\n ai:\n openai:\n api-key: ${DEEPSEEK_API_KEY:}\n base-url: ${DEEPSEEK_BASE_URL:https://api.deepseek.com}\n chat:\n options:\n model: ${DEEPSEEK_MODEL:deepseek-chat}\n max-tokens: 2048\n rag:\n embedding:\n api-url: ${RAG_EMBEDDING_API_URL:https://api.siliconflow.cn/v1/embeddings}\n api-key: ${SILICONFLOW_API_KEY:}\n model: ${RAG_EMBEDDING_MODEL:BAAI/bge-m3}\n dimension: 1024\n mail:\n host: ${MAIL_HOST:smtp.qq.com}\n port: ${MAIL_PORT:465}\n username: ${MAIL_USERNAME:your-email@qq.com}\n password: ${MAIL_PASSWORD:your-smtp-auth-code}\n default-encoding: UTF-8\n properties:\n mail:\n smtp:\n auth: true\n starttls:\n enable: false\n socketFactory:\n class: javax.net.ssl.SSLSocketFactory\n port: 465\n jackson:\n time-zone: Asia/Shanghai\njwt:\n secret: ${JWT_SECRET}\n expiration: 86400000\ncors:\n allowed-origins: ${CORS_ALLOWED_ORIGINS:https://moodcopilot.dpdns.org,http://localhost:5173}\nturnstile:\n secret-key: ${TURNSTILE_SECRET_KEY}\n site-key: ${TURNSTILE_SITE_KEY:}\n#Mybatis相关配置\nmybatis-plus:\n map-underscore-to-camel-case: true\n global-config:\n db-config:\n id-type: auto # 全局设置主键生成策略为数据库自增\n"}, "087684750b6e38388c3053c78f384b9174123576": {"t": 1785748692.2047858, "n": 2461, "h": "7face6ae579ed504", "c": "server:\n port: 18080\nspring:\n mvc:\n async:\n request-timeout: 120000\n servlet:\n multipart:\n max-file-size: 10MB\n max-request-size: 10MB\n application:\n name: moodcopilot\n data:\n # redis配置\n redis:\n host: ${REDIS_HOST:localhost}\n port: ${REDIS_PORT:6379}\n password: ${REDIS_PASSWORD:}\n lettuce:\n pool:\n max-active: 30\n max-idle: 20\n min-idle: 5\n time-between-eviction-runs: 30s\n #数据库的连接信息\n datasource:\n # url: jdbc:mysql://localhost:3306/dems\n url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:moodcopilot}?serverTimezone=Asia/Shanghai\n username: ${DB_USERNAME:root}\n password: ${DB_PASSWORD:}\n driver-class-name: com.mysql.cj.jdbc.Driver\n hikari:\n maximum-pool-size: 30\n minimum-idle: 5\n connection-timeout: 5000\n idle-timeout: 300000\n max-lifetime: 600000\n leak-detection-threshold: 10000\n flyway:\n enabled: true\n clean-disabled: true\n baseline-on-migrate: true\n validate-on-migrate: false\n locations: classpath:db/migration\n cache:\n type: redis\n redis:\n time-to-live: 120000\n cache-null-values: false\n ai:\n openai:\n api-key: ${DEEPSEEK_API_KEY:}\n base-url: ${DEEPSEEK_BASE_URL:https://api.deepseek.com}\n chat:\n options:\n model: ${DEEPSEEK_MODEL:deepseek-chat}\n max-tokens: 2048\n rag:\n embedding:\n api-url: ${RAG_EMBEDDING_API_URL:https://api.siliconflow.cn/v1/embeddings}\n api-key: ${SILICONFLOW_API_KEY:}\n model: ${RAG_EMBEDDING_MODEL:BAAI/bge-m3}\n dimension: 1024\n mail:\n host: ${MAIL_HOST:smtp.qq.com}\n port: ${MAIL_PORT:465}\n username: ${MAIL_USERNAME:your-email@qq.com}\n password: ${MAIL_PASSWORD:your-smtp-auth-code}\n default-encoding: UTF-8\n properties:\n mail:\n smtp:\n auth: true\n starttls:\n enable: false\n socketFactory:\n class: javax.net.ssl.SSLSocketFactory\n port: 465\n jackson:\n time-zone: Asia/Shanghai\njwt:\n secret: ${JWT_SECRET}\n expiration: 86400000\ncors:\n allowed-origins: ${CORS_ALLOWED_ORIGINS:https://moodcopilot.dpdns.org,http://localhost:5173}\nturnstile:\n secret-key: ${TURNSTILE_SECRET_KEY:}\n site-key: ${TURNSTILE_SITE_KEY:}\n#Mybatis相关配置\nmybatis-plus:\n map-underscore-to-camel-case: true\n global-config:\n db-config:\n id-type: auto # 全局设置主键生成策略为数据库自增\n"}, "d9d658ccaf9d9da455bc269218fec267bad3dd77": {"t": 1785748693.2858174, "n": 2431, "h": "291c737a47afd2fd", "c": "server:\n port: 18080\nspring:\n mvc:\n async:\n request-timeout: 120000\n servlet:\n multipart:\n max-file-size: 10MB\n max-request-size: 10MB\n application:\n name: moodcopilot\n data:\n # redis配置\n redis:\n host: ${REDIS_HOST:localhost}\n port: ${REDIS_PORT:6379}\n password: ${REDIS_PASSWORD:}\n lettuce:\n pool:\n max-active: 30\n max-idle: 20\n min-idle: 5\n time-between-eviction-runs: 30s\n #数据库的连接信息\n datasource:\n # url: jdbc:mysql://localhost:3306/dems\n url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:moodcopilot}?serverTimezone=Asia/Shanghai\n username: ${DB_USERNAME:root}\n password: ${DB_PASSWORD:}\n driver-class-name: com.mysql.cj.jdbc.Driver\n hikari:\n maximum-pool-size: 30\n minimum-idle: 5\n connection-timeout: 5000\n idle-timeout: 300000\n max-lifetime: 600000\n leak-detection-threshold: 10000\n flyway:\n enabled: true\n clean-disabled: true\n baseline-on-migrate: true\n validate-on-migrate: false\n locations: classpath:db/migration\n cache:\n type: redis\n redis:\n time-to-live: 120000\n cache-null-values: false\n ai:\n openai:\n api-key: ${DEEPSEEK_API_KEY:}\n base-url: ${DEEPSEEK_BASE_URL:https://api.deepseek.com}\n chat:\n options:\n model: ${DEEPSEEK_MODEL:deepseek-chat}\n max-tokens: 2048\n rag:\n embedding:\n api-url: ${RAG_EMBEDDING_API_URL:https://api.siliconflow.cn/v1/embeddings}\n api-key: ${SILICONFLOW_API_KEY:}\n model: ${RAG_EMBEDDING_MODEL:BAAI/bge-m3}\n dimension: 1024\n mail:\n host: ${MAIL_HOST:smtp.qq.com}\n port: ${MAIL_PORT:465}\n username: ${MAIL_USERNAME:your-email@qq.com}\n password: ${MAIL_PASSWORD:your-smtp-auth-code}\n default-encoding: UTF-8\n properties:\n mail:\n smtp:\n auth: true\n starttls:\n enable: false\n socketFactory:\n class: javax.net.ssl.SSLSocketFactory\n port: 465\n jackson:\n time-zone: Asia/Shanghai\njwt:\n secret: ${JWT_SECRET}\n expiration: 86400000\ncors:\n allowed-origins: ${CORS_ALLOWED_ORIGINS:http://localhost:5173}\nturnstile:\n secret-key: ${TURNSTILE_SECRET_KEY:}\n site-key: ${TURNSTILE_SITE_KEY:}\n#Mybatis相关配置\nmybatis-plus:\n map-underscore-to-camel-case: true\n global-config:\n db-config:\n id-type: auto # 全局设置主键生成策略为数据库自增\n"}, "acc00855e27c5d03cc29d7bcfdf11cb80545755c": {"t": 1785748694.3630106, "n": 2431, "h": "5b0f4258c441777d", "c": "server:\n port: 18080\nspring:\n mvc:\n async:\n request-timeout: 120000\n servlet:\n multipart:\n max-file-size: 10MB\n max-request-size: 10MB\n application:\n name: moodcopilot\n data:\n # redis配置\n redis:\n host: ${REDIS_HOST:localhost}\n port: ${REDIS_PORT:6379}\n password: ${REDIS_PASSWORD:}\n lettuce:\n pool:\n max-active: 30\n max-idle: 20\n min-idle: 5\n time-between-eviction-runs: 30s\n #数据库的连接信息\n datasource:\n # url: jdbc:mysql://localhost:3306/dems\n url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:moodcopilot}?serverTimezone=Asia/Shanghai\n username: ${DB_USERNAME:root}\n password: ${DB_PASSWORD:}\n driver-class-name: com.mysql.cj.jdbc.Driver\n hikari:\n maximum-pool-size: 30\n minimum-idle: 5\n connection-timeout: 5000\n idle-timeout: 300000\n max-lifetime: 600000\n leak-detection-threshold: 10000\n flyway:\n enabled: true\n clean-disabled: true\n baseline-on-migrate: true\n validate-on-migrate: false\n locations: classpath:db/migration\n cache:\n type: redis\n redis:\n time-to-live: 120000\n cache-null-values: false\n ai:\n openai:\n api-key: ${DEEPSEEK_API_KEY:}\n base-url: ${DEEPSEEK_BASE_URL:https://api.deepseek.com}\n chat:\n options:\n model: ${DEEPSEEK_MODEL:deepseek-chat}\n max-tokens: 2048\n rag:\n embedding:\n api-url: ${RAG_EMBEDDING_API_URL:https://api.siliconflow.cn/v1/embeddings}\n api-key: ${SILICONFLOW_API_KEY:}\n model: ${RAG_EMBEDDING_MODEL:BAAI/bge-m3}\n dimension: 1024\n mail:\n host: ${MAIL_HOST:smtp.qq.com}\n port: ${MAIL_PORT:465}\n username: ${MAIL_USERNAME:your-email@qq.com}\n password: ${MAIL_PASSWORD:your-smtp-auth-code}\n default-encoding: UTF-8\n properties:\n mail:\n smtp:\n auth: true\n starttls:\n enable: false\n socketFactory:\n class: javax.net.ssl.SSLSocketFactory\n port: 465\n jackson:\n time-zone: Asia/Shanghai\njwt:\n secret: ${JWT_SECRET}\n expiration: 86400000\ncors:\n allowed-origins: ${CORS_ALLOWED_ORIGINS:moodcopilot.dpdns.org}\nturnstile:\n secret-key: ${TURNSTILE_SECRET_KEY:}\n site-key: ${TURNSTILE_SITE_KEY:}\n#Mybatis相关配置\nmybatis-plus:\n map-underscore-to-camel-case: true\n global-config:\n db-config:\n id-type: auto # 全局设置主键生成策略为数据库自增\n"}, "25d0f0532bc1bc911cc966e3b9f1a67d704cc970": {"t": 1785748695.4358518, "n": 2431, "h": "291c737a47afd2fd", "c": "server:\n port: 18080\nspring:\n mvc:\n async:\n request-timeout: 120000\n servlet:\n multipart:\n max-file-size: 10MB\n max-request-size: 10MB\n application:\n name: moodcopilot\n data:\n # redis配置\n redis:\n host: ${REDIS_HOST:localhost}\n port: ${REDIS_PORT:6379}\n password: ${REDIS_PASSWORD:}\n lettuce:\n pool:\n max-active: 30\n max-idle: 20\n min-idle: 5\n time-between-eviction-runs: 30s\n #数据库的连接信息\n datasource:\n # url: jdbc:mysql://localhost:3306/dems\n url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:moodcopilot}?serverTimezone=Asia/Shanghai\n username: ${DB_USERNAME:root}\n password: ${DB_PASSWORD:}\n driver-class-name: com.mysql.cj.jdbc.Driver\n hikari:\n maximum-pool-size: 30\n minimum-idle: 5\n connection-timeout: 5000\n idle-timeout: 300000\n max-lifetime: 600000\n leak-detection-threshold: 10000\n flyway:\n enabled: true\n clean-disabled: true\n baseline-on-migrate: true\n validate-on-migrate: false\n locations: classpath:db/migration\n cache:\n type: redis\n redis:\n time-to-live: 120000\n cache-null-values: false\n ai:\n openai:\n api-key: ${DEEPSEEK_API_KEY:}\n base-url: ${DEEPSEEK_BASE_URL:https://api.deepseek.com}\n chat:\n options:\n model: ${DEEPSEEK_MODEL:deepseek-chat}\n max-tokens: 2048\n rag:\n embedding:\n api-url: ${RAG_EMBEDDING_API_URL:https://api.siliconflow.cn/v1/embeddings}\n api-key: ${SILICONFLOW_API_KEY:}\n model: ${RAG_EMBEDDING_MODEL:BAAI/bge-m3}\n dimension: 1024\n mail:\n host: ${MAIL_HOST:smtp.qq.com}\n port: ${MAIL_PORT:465}\n username: ${MAIL_USERNAME:your-email@qq.com}\n password: ${MAIL_PASSWORD:your-smtp-auth-code}\n default-encoding: UTF-8\n properties:\n mail:\n smtp:\n auth: true\n starttls:\n enable: false\n socketFactory:\n class: javax.net.ssl.SSLSocketFactory\n port: 465\n jackson:\n time-zone: Asia/Shanghai\njwt:\n secret: ${JWT_SECRET}\n expiration: 86400000\ncors:\n allowed-origins: ${CORS_ALLOWED_ORIGINS:http://localhost:5173}\nturnstile:\n secret-key: ${TURNSTILE_SECRET_KEY:}\n site-key: ${TURNSTILE_SITE_KEY:}\n#Mybatis相关配置\nmybatis-plus:\n map-underscore-to-camel-case: true\n global-config:\n db-config:\n id-type: auto # 全局设置主键生成策略为数据库自增\n"}, "131b18c50231c6155a6f29ab8f37ce9c544a1277": {"t": 1785748696.516288, "n": 2340, "h": "93819c327a3282a5", "c": "server:\n port: 18080\nspring:\n mvc:\n async:\n request-timeout: 120000\n servlet:\n multipart:\n max-file-size: 10MB\n max-request-size: 10MB\n application:\n name: moodcopilot\n data:\n # redis配置\n redis:\n host: ${REDIS_HOST:localhost}\n port: ${REDIS_PORT:6379}\n password: ${REDIS_PASSWORD:}\n lettuce:\n pool:\n max-active: 30\n max-idle: 20\n min-idle: 5\n time-between-eviction-runs: 30s\n #数据库的连接信息\n datasource:\n # url: jdbc:mysql://localhost:3306/dems\n url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:moodcopilot}?serverTimezone=Asia/Shanghai\n username: ${DB_USERNAME:root}\n password: ${DB_PASSWORD:}\n driver-class-name: com.mysql.cj.jdbc.Driver\n hikari:\n maximum-pool-size: 30\n minimum-idle: 5\n connection-timeout: 5000\n idle-timeout: 300000\n max-lifetime: 600000\n leak-detection-threshold: 10000\n flyway:\n enabled: true\n clean-disabled: true\n baseline-on-migrate: true\n validate-on-migrate: false\n locations: classpath:db/migration\n cache:\n type: redis\n redis:\n time-to-live: 120000\n cache-null-values: false\n ai:\n openai:\n api-key: ${DEEPSEEK_API_KEY:}\n base-url: ${DEEPSEEK_BASE_URL:https://api.deepseek.com}\n chat:\n options:\n model: ${DEEPSEEK_MODEL:deepseek-chat}\n max-tokens: 2048\n rag:\n embedding:\n api-url: ${RAG_EMBEDDING_API_URL:https://api.siliconflow.cn/v1/embeddings}\n api-key: ${SILICONFLOW_API_KEY:}\n model: ${RAG_EMBEDDING_MODEL:BAAI/bge-m3}\n dimension: 1024\n mail:\n host: ${MAIL_HOST:smtp.qq.com}\n port: ${MAIL_PORT:465}\n username: ${MAIL_USERNAME:your-email@qq.com}\n password: ${MAIL_PASSWORD:your-smtp-auth-code}\n default-encoding: UTF-8\n properties:\n mail:\n smtp:\n auth: true\n starttls:\n enable: false\n socketFactory:\n class: javax.net.ssl.SSLSocketFactory\n port: 465\n jackson:\n time-zone: Asia/Shanghai\njwt:\n secret: ${JWT_SECRET:bW9vZGNvcGlsb3Qtc2VjcmV0LWtleS1mb3ItZGV2ZWxvcG1lbnQtb25seS0yMDI2}\n expiration: 86400000\n#Mybatis相关配置\nmybatis-plus:\n map-underscore-to-camel-case: true\n global-config:\n db-config:\n id-type: auto # 全局设置主键生成策略为数据库自增\n"}, "1946664a4e28907d25d04191a264306afe02284a": {"t": 1785748697.744549, "n": 2116, "h": "fbeec1de4905bac4", "c": "server:\n port: 18080\nspring:\n mvc:\n async:\n request-timeout: 120000\n servlet:\n multipart:\n max-file-size: 10MB\n max-request-size: 10MB\n application:\n name: moodcopilot\n data:\n # redis配置\n redis:\n host: ${REDIS_HOST:localhost}\n port: ${REDIS_PORT:6379}\n password: ${REDIS_PASSWORD:}\n lettuce:\n pool:\n max-active: 30\n max-idle: 20\n min-idle: 5\n time-between-eviction-runs: 30s\n #数据库的连接信息\n datasource:\n # url: jdbc:mysql://localhost:3306/dems\n url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:moodcopilot}?serverTimezone=Asia/Shanghai\n username: ${DB_USERNAME:root}\n password: ${DB_PASSWORD:}\n driver-class-name: com.mysql.cj.jdbc.Driver\n hikari:\n maximum-pool-size: 30\n minimum-idle: 5\n connection-timeout: 5000\n idle-timeout: 300000\n max-lifetime: 600000\n leak-detection-threshold: 10000\n flyway:\n enabled: true\n clean-disabled: true\n baseline-on-migrate: true\n validate-on-migrate: false\n locations: classpath:db/migration\n cache:\n type: redis\n redis:\n time-to-live: 120000\n cache-null-values: false\n ai:\n openai:\n api-key: ${DEEPSEEK_API_KEY:}\n base-url: ${DEEPSEEK_BASE_URL:https://api.deepseek.com}\n chat:\n options:\n model: ${DEEPSEEK_MODEL:deepseek-chat}\n max-tokens: 2048\n mail:\n host: ${MAIL_HOST:smtp.qq.com}\n port: ${MAIL_PORT:465}\n username: ${MAIL_USERNAME:your-email@qq.com}\n password: ${MAIL_PASSWORD:your-smtp-auth-code}\n default-encoding: UTF-8\n properties:\n mail:\n smtp:\n auth: true\n starttls:\n enable: false\n socketFactory:\n class: javax.net.ssl.SSLSocketFactory\n port: 465\n jackson:\n time-zone: Asia/Shanghai\njwt:\n secret: ${JWT_SECRET:bW9vZGNvcGlsb3Qtc2VjcmV0LWtleS1mb3ItZGV2ZWxvcG1lbnQtb25seS0yMDI2}\n expiration: 86400000\n#Mybatis相关配置\nmybatis-plus:\n map-underscore-to-camel-case: true\n global-config:\n db-config:\n id-type: auto # 全局设置主键生成策略为数据库自增\n"}, "25bb8476e689c5a119f14186fa2a466006859e0c": {"t": 1785748698.820798, "n": 2098, "h": "bc4f97e8c53044d5", "c": "server:\n port: 18080\nspring:\n mvc:\n async:\n request-timeout: 120000\n servlet:\n multipart:\n max-file-size: 10MB\n max-request-size: 10MB\n application:\n name: moodcopilot\n data:\n # redis配置\n redis:\n host: ${REDIS_HOST:localhost}\n port: ${REDIS_PORT:6379}\n password: ${REDIS_PASSWORD:}\n lettuce:\n pool:\n max-active: 30\n max-idle: 20\n min-idle: 5\n time-between-eviction-runs: 30s\n #数据库的连接信息\n datasource:\n # url: jdbc:mysql://localhost:3306/dems\n url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:moodcopilot}?serverTimezone=Asia/Shanghai\n username: ${DB_USERNAME:root}\n password: ${DB_PASSWORD:}\n driver-class-name: com.mysql.cj.jdbc.Driver\n hikari:\n maximum-pool-size: 30\n minimum-idle: 5\n connection-timeout: 5000\n idle-timeout: 300000\n max-lifetime: 600000\n leak-detection-threshold: 10000\n flyway:\n enabled: true\n clean-disabled: true\n baseline-on-migrate: true\n validate-on-migrate: false\n locations: classpath:db/migration\n cache:\n type: redis\n redis:\n time-to-live: 120000\n cache-null-values: false\n ai:\n openai:\n api-key: ${DEEPSEEK_API_KEY:}\n base-url: ${DEEPSEEK_BASE_URL:https://api.deepseek.com}\n chat:\n options:\n model: deepseek-chat\n max-tokens: 2048\n mail:\n host: ${MAIL_HOST:smtp.qq.com}\n port: ${MAIL_PORT:465}\n username: ${MAIL_USERNAME:your-email@qq.com}\n password: ${MAIL_PASSWORD:your-smtp-auth-code}\n default-encoding: UTF-8\n properties:\n mail:\n smtp:\n auth: true\n starttls:\n enable: false\n socketFactory:\n class: javax.net.ssl.SSLSocketFactory\n port: 465\n jackson:\n time-zone: Asia/Shanghai\njwt:\n secret: ${JWT_SECRET:bW9vZGNvcGlsb3Qtc2VjcmV0LWtleS1mb3ItZGV2ZWxvcG1lbnQtb25seS0yMDI2}\n expiration: 86400000\n#Mybatis相关配置\nmybatis-plus:\n map-underscore-to-camel-case: true\n global-config:\n db-config:\n id-type: auto # 全局设置主键生成策略为数据库自增\n"}, "7812974ed826ae0017ce139f6075a01e4d647a6d": {"t": 1785748699.876146, "n": 2067, "h": "9909bf916d2dd8a1", "c": "server:\n port: 18080\nspring:\n mvc:\n async:\n request-timeout: 120000\n servlet:\n multipart:\n max-file-size: 10MB\n max-request-size: 10MB\n application:\n name: moodcopilot\n data:\n # redis配置\n redis:\n host: ${REDIS_HOST:localhost}\n port: ${REDIS_PORT:6379}\n password: ${REDIS_PASSWORD:}\n lettuce:\n pool:\n max-active: 30\n max-idle: 20\n min-idle: 5\n time-between-eviction-runs: 30s\n #数据库的连接信息\n datasource:\n # url: jdbc:mysql://localhost:3306/dems\n url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:moodcopilot}?serverTimezone=Asia/Shanghai\n username: ${DB_USERNAME:root}\n password: ${DB_PASSWORD:}\n driver-class-name: com.mysql.cj.jdbc.Driver\n hikari:\n maximum-pool-size: 30\n minimum-idle: 5\n connection-timeout: 5000\n idle-timeout: 300000\n max-lifetime: 600000\n leak-detection-threshold: 10000\n flyway:\n enabled: true\n clean-disabled: true\n baseline-on-migrate: true\n locations: classpath:db/migration\n cache:\n type: redis\n redis:\n time-to-live: 120000\n cache-null-values: false\n ai:\n openai:\n api-key: ${DEEPSEEK_API_KEY:}\n base-url: ${DEEPSEEK_BASE_URL:https://api.deepseek.com}\n chat:\n options:\n model: deepseek-chat\n max-tokens: 2048\n mail:\n host: ${MAIL_HOST:smtp.qq.com}\n port: ${MAIL_PORT:465}\n username: ${MAIL_USERNAME:your-email@qq.com}\n password: ${MAIL_PASSWORD:your-smtp-auth-code}\n default-encoding: UTF-8\n properties:\n mail:\n smtp:\n auth: true\n starttls:\n enable: false\n socketFactory:\n class: javax.net.ssl.SSLSocketFactory\n port: 465\n jackson:\n time-zone: Asia/Shanghai\njwt:\n secret: ${JWT_SECRET:bW9vZGNvcGlsb3Qtc2VjcmV0LWtleS1mb3ItZGV2ZWxvcG1lbnQtb25seS0yMDI2}\n expiration: 86400000\n#Mybatis相关配置\nmybatis-plus:\n map-underscore-to-camel-case: true\n global-config:\n db-config:\n id-type: auto # 全局设置主键生成策略为数据库自增\n"}, "7db41e586de92a54b42c03413e80e690f79951a7": {"t": 1785748700.9626842, "n": 1663, "h": "644c50dd0d384120", "c": "server:\n port: 18080\nspring:\n mvc:\n async:\n request-timeout: 120000\n servlet:\n multipart:\n max-file-size: 10MB\n max-request-size: 10MB\n application:\n name: moodcopilot\n data:\n # redis配置\n redis:\n host: ${REDIS_HOST:localhost}\n port: ${REDIS_PORT:6379}\n password: ${REDIS_PASSWORD:}\n lettuce:\n pool:\n max-active: 30\n max-idle: 20\n min-idle: 5\n time-between-eviction-runs: 30s\n #数据库的连接信息\n datasource:\n # url: jdbc:mysql://localhost:3306/dems\n url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:moodcopilot}?serverTimezone=Asia/Shanghai\n username: ${DB_USERNAME:root}\n password: ${DB_PASSWORD:}\n driver-class-name: com.mysql.cj.jdbc.Driver\n hikari:\n maximum-pool-size: 30\n minimum-idle: 5\n connection-timeout: 5000\n idle-timeout: 300000\n max-lifetime: 600000\n leak-detection-threshold: 10000\n flyway:\n enabled: true\n clean-disabled: true\n baseline-on-migrate: true\n locations: classpath:db/migration\n cache:\n type: redis\n redis:\n time-to-live: 120000\n cache-null-values: false\n ai:\n openai:\n api-key: ${DEEPSEEK_API_KEY:}\n base-url: ${DEEPSEEK_BASE_URL:https://api.deepseek.com}\n chat:\n options:\n model: deepseek-chat\n max-tokens: 2048\n jackson:\n time-zone: Asia/Shanghai\njwt:\n secret: ${JWT_SECRET:bW9vZGNvcGlsb3Qtc2VjcmV0LWtleS1mb3ItZGV2ZWxvcG1lbnQtb25seS0yMDI2}\n expiration: 86400000\n#Mybatis相关配置\nmybatis-plus:\n map-underscore-to-camel-case: true\n global-config:\n db-config:\n id-type: auto # 全局设置主键生成策略为数据库自增\n"}, "84567ff5bef7a218149806f790e2bb70905ee1a9": {"t": 1785748703.0002315, "n": 1594, "h": "a39fda2734b16b69", "c": "server:\n port: 18080\nspring:\n mvc:\n async:\n request-timeout: 120000\n servlet:\n multipart:\n max-file-size: 10MB\n max-request-size: 10MB\n application:\n name: moodcopilot\n data:\n # redis配置\n redis:\n host: ${REDIS_HOST:localhost}\n port: ${REDIS_PORT:6379}\n password: ${REDIS_PASSWORD:}\n lettuce:\n pool:\n max-active: 30\n max-idle: 20\n min-idle: 5\n time-between-eviction-runs: 30s\n #数据库的连接信息\n datasource:\n # url: jdbc:mysql://localhost:3306/dems\n url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:moodcopilot}\n username: ${DB_USERNAME:root}\n password: ${DB_PASSWORD:}\n driver-class-name: com.mysql.cj.jdbc.Driver\n hikari:\n maximum-pool-size: 30\n minimum-idle: 5\n connection-timeout: 5000\n idle-timeout: 300000\n max-lifetime: 600000\n leak-detection-threshold: 10000\n flyway:\n enabled: true\n clean-disabled: true\n baseline-on-migrate: true\n locations: classpath:db/migration\n cache:\n type: redis\n redis:\n time-to-live: 120000\n cache-null-values: false\n ai:\n openai:\n api-key: ${DEEPSEEK_API_KEY:}\n base-url: ${DEEPSEEK_BASE_URL:https://api.deepseek.com}\n chat:\n options:\n model: deepseek-chat\n max-tokens: 2048\njwt:\n secret: ${JWT_SECRET:bW9vZGNvcGlsb3Qtc2VjcmV0LWtleS1mb3ItZGV2ZWxvcG1lbnQtb25seS0yMDI2}\n expiration: 86400000\n#Mybatis相关配置\nmybatis-plus:\n map-underscore-to-camel-case: true\n global-config:\n db-config:\n id-type: auto # 全局设置主键生成策略为数据库自增\n"}, "2bab44ed9617adeaa71d22c540428e4c7c12459e": {"t": 1785748704.0681386, "n": 1612, "h": "758a8e8a0d9b3259", "c": "server:\n port: 18080\nspring:\n mvc:\n async:\n request-timeout: 120000\n servlet:\n multipart:\n max-file-size: 10MB\n max-request-size: 10MB\n application:\n name: moodcopilot\n data:\n # redis配置\n redis:\n host: ${REDIS_HOST:localhost}\n port: ${REDIS_PORT:6379}\n password: ${REDIS_PASSWORD:}\n lettuce:\n pool:\n max-active: 30\n max-idle: 20\n min-idle: 5\n time-between-eviction-runs: 30s\n #数据库的连接信息\n datasource:\n # url: jdbc:mysql://localhost:3306/dems\n url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:moodcopilot}\n username: ${DB_USERNAME:root}\n password: ${DB_PASSWORD:}\n driver-class-name: com.mysql.cj.jdbc.Driver\n hikari:\n maximum-pool-size: 30\n minimum-idle: 5\n connection-timeout: 5000\n idle-timeout: 300000\n max-lifetime: 600000\n leak-detection-threshold: 10000\n flyway:\n enabled: true\n clean-disabled: true\n baseline-on-migrate: true\n locations: classpath:db/migration\n cache:\n type: redis\n redis:\n time-to-live: 120000\n cache-null-values: false\n ai:\n openai:\n api-key: ${DEEPSEEK_API_KEY:}\n base-url: ${DEEPSEEK_BASE_URL:https://api.deepseek.com}\n chat:\n options:\n model: ${DEEPSEEK_MODEL:deepseek-chat}\n max-tokens: 2048\njwt:\n secret: ${JWT_SECRET:bW9vZGNvcGlsb3Qtc2VjcmV0LWtleS1mb3ItZGV2ZWxvcG1lbnQtb25seS0yMDI2}\n expiration: 86400000\n#Mybatis相关配置\nmybatis-plus:\n map-underscore-to-camel-case: true\n global-config:\n db-config:\n id-type: auto # 全局设置主键生成策略为数据库自增\n"}, "2501cb203ddb51ad9326dfb92cdbb3fd0668c882": {"t": 1785748705.133805, "n": 1434, "h": "2c30f6cdd6e3c620", "c": "spring:\n application:\n name: moodcopilot\n data:\n # redis配置\n redis:\n host: ${REDIS_HOST:localhost}\n port: ${REDIS_PORT:6379}\n password: ${REDIS_PASSWORD:}\n lettuce:\n pool:\n max-active: 30\n max-idle: 20\n min-idle: 5\n time-between-eviction-runs: 30s\n #数据库的连接信息\n datasource:\n # url: jdbc:mysql://localhost:3306/dems\n url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:moodcopilot}\n username: ${DB_USERNAME:root}\n password: ${DB_PASSWORD:}\n driver-class-name: com.mysql.cj.jdbc.Driver\n hikari:\n maximum-pool-size: 30\n minimum-idle: 5\n connection-timeout: 5000\n idle-timeout: 300000\n max-lifetime: 600000\n leak-detection-threshold: 10000\n flyway:\n enabled: true\n clean-disabled: true\n baseline-on-migrate: true\n locations: classpath:db/migration\n cache:\n type: redis\n redis:\n time-to-live: 120000\n cache-null-values: false\n ai:\n openai:\n api-key: ${DEEPSEEK_API_KEY:}\n base-url: ${DEEPSEEK_BASE_URL:https://api.deepseek.com}\n chat:\n options:\n model: ${DEEPSEEK_MODEL:deepseek-chat}\njwt:\n secret: ${JWT_SECRET:bW9vZGNvcGlsb3Qtc2VjcmV0LWtleS1mb3ItZGV2ZWxvcG1lbnQtb25seS0yMDI2}\n expiration: 86400000\n#Mybatis相关配置\nmybatis-plus:\n map-underscore-to-camel-case: true\n global-config:\n db-config:\n id-type: auto # 全局设置主键生成策略为数据库自增\n"}, "ef147abe68d3b184131c3811cb273e143715b91c": {"t": 1785748706.2406588, "n": 1249, "h": "98c0c7e13988992d", "c": "spring:\n application:\n name: moodcopilot\n data:\n # redis配置\n redis:\n host: ${REDIS_HOST:localhost}\n port: ${REDIS_PORT:6379}\n password: ${REDIS_PASSWORD:}\n lettuce:\n pool:\n max-active: 10\n max-idle: 10\n min-idle: 1\n time-between-eviction-runs: 10s\n #数据库的连接信息\n datasource:\n # url: jdbc:mysql://localhost:3306/dems\n url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:moodcopilot}\n username: ${DB_USERNAME:root}\n password: ${DB_PASSWORD:}\n driver-class-name: com.mysql.cj.jdbc.Driver\n flyway:\n enabled: true\n clean-disabled: true\n baseline-on-migrate: true\n locations: classpath:db/migration\n cache:\n type: redis\n redis:\n time-to-live: 120000\n cache-null-values: false\n ai:\n openai:\n api-key: ${DEEPSEEK_API_KEY:}\n base-url: ${DEEPSEEK_BASE_URL:https://api.deepseek.com}\n chat:\n options:\n model: ${DEEPSEEK_MODEL:deepseek-chat}\njwt:\n secret: ${JWT_SECRET:bW9vZGNvcGlsb3Qtc2VjcmV0LWtleS1mb3ItZGV2ZWxvcG1lbnQtb25seS0yMDI2}\n expiration: 86400000\n#Mybatis相关配置\nmybatis-plus:\n map-underscore-to-camel-case: true\n global-config:\n db-config:\n id-type: auto # 全局设置主键生成策略为数据库自增\n"}, "0d71716d07afbbdd5117b39d2d283b9abab643d4": {"t": 1785748707.358753, "n": 1208, "h": "c1c6ab6d24ce52f3", "c": "spring:\n application:\n name: moodcopilot\n data:\n # redis配置\n redis:\n host: ${REDIS_HOST:localhost}\n port: ${REDIS_PORT:6379}\n password: ${REDIS_PASSWORD:}\n lettuce:\n pool:\n max-active: 10\n max-idle: 10\n min-idle: 1\n time-between-eviction-runs: 10s\n #数据库的连接信息\n datasource:\n # url: jdbc:mysql://localhost:3306/dems\n url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:moodcopilot}\n username: ${DB_USERNAME:root}\n password: ${DB_PASSWORD:}\n driver-class-name: com.mysql.cj.jdbc.Driver\n flyway:\n enabled: true\n clean-disabled: true\n baseline-on-migrate: true\n locations: classpath:db/migration\n cache:\n type: redis\n redis:\n time-to-live: 120000\n cache-null-values: false\njwt:\n secret: ${JWT_SECRET:bW9vZGNvcGlsb3Qtc2VjcmV0LWtleS1mb3ItZGV2ZWxvcG1lbnQtb25seS0yMDI2}\n expiration: 86400000\n#Mybatis相关配置\nmybatis-plus:\n map-underscore-to-camel-case: true\n global-config:\n db-config:\n id-type: auto # 全局设置主键生成策略为数据库自增\nai:\n deepseek:\n api-key: ${DEEPSEEK_API_KEY:}\n base-url: ${DEEPSEEK_BASE_URL:https://api.deepseek.com}\n model: ${DEEPSEEK_MODEL:deepseek-chat}\n"}, "f78080252270c5cbf0d6cd0d00ee6b3ec3c8718a": {"t": 1785748708.4697146, "n": 1114, "h": "5b7afa94c42be32a", "c": "spring:\n application:\n name: moodcopilot\n data:\n # redis配置\n redis:\n host: ${REDIS_HOST:localhost}\n port: ${REDIS_PORT:6379}\n password: ${REDIS_PASSWORD:}\n lettuce:\n pool:\n max-active: 10\n max-idle: 10\n min-idle: 1\n time-between-eviction-runs: 10s\n #数据库的连接信息\n datasource:\n # url: jdbc:mysql://localhost:3306/dems\n url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:moodcopilot}\n username: ${DB_USERNAME:root}\n password: ${DB_PASSWORD:}\n driver-class-name: com.mysql.cj.jdbc.Driver\n flyway:\n enabled: true\n clean-disabled: true\n baseline-on-migrate: true\n locations: classpath:db/migration\njwt:\n secret: ${JWT_SECRET:bW9vZGNvcGlsb3Qtc2VjcmV0LWtleS1mb3ItZGV2ZWxvcG1lbnQtb25seS0yMDI2}\n expiration: 86400000\n#Mybatis相关配置\nmybatis-plus:\n map-underscore-to-camel-case: true\n global-config:\n db-config:\n id-type: auto # 全局设置主键生成策略为数据库自增\nai:\n deepseek:\n api-key: ${DEEPSEEK_API_KEY:}\n base-url: ${DEEPSEEK_BASE_URL:https://api.deepseek.com}\n model: ${DEEPSEEK_MODEL:deepseek-chat}\n"}}, "docker-compose.yml": {"a717f843c1ead3557db15b2ce3238391caf68185": {"t": 1785745235.1272542, "n": 2929, "h": "ad49fde314d93d86", "c": "services:\r\n tunnel:\r\n image: cloudflare/cloudflared:latest\r\n container_name: cloudflare-tunnel\r\n restart: always\r\n command: tunnel --no-autoupdate run --token ${CF_TUNNEL_TOKEN}\r\n mysql:\r\n image: mysql:8.0\r\n environment:\r\n MYSQL_ROOT_PASSWORD: ${DB_PASSWORD:-root}\r\n MYSQL_DATABASE: mood_copilot_db\r\n expose:\r\n - \"3306\"\r\n volumes:\r\n - mysql_data:/var/lib/mysql\r\n deploy:\r\n resources:\r\n limits:\r\n memory: 512M\r\n restart: unless-stopped\r\n security_opt:\r\n - no-new-privileges:true\r\n command: >\r\n --innodb-buffer-pool-size=128M\r\n --max-connections=50\r\n --character-set-server=utf8mb4\r\n --collation-server=utf8mb4_unicode_ci\r\n healthcheck:\r\n test: [\"CMD\", \"mysqladmin\", \"ping\", \"-h\", \"localhost\"]\r\n interval: 10s\r\n retries: 5\r\n\r\n redis:\r\n image: redis/redis-stack-server:latest\r\n expose:\r\n - \"6379\"\r\n volumes:\r\n - redis_data:/data\r\n deploy:\r\n resources:\r\n limits:\r\n memory: 256M\r\n restart: unless-stopped\r\n security_opt:\r\n - no-new-privileges:true\r\n healthcheck:\r\n test: [\"CMD\", \"redis-cli\", \"ping\"]\r\n interval: 10s\r\n retries: 5\r\n\r\n backend:\r\n build: ./backend/moodcopilot\r\n expose:\r\n - \"18080\"\r\n volumes:\r\n - uploads_data:/app/uploads\r\n environment:\r\n SPRING_PROFILES_ACTIVE: docker\r\n DB_HOST: mysql\r\n DB_PORT: 3306\r\n DB_NAME: mood_copilot_db\r\n DB_USERNAME: root\r\n DB_PASSWORD: ${DB_PASSWORD:-root}\r\n REDIS_HOST: redis\r\n DEEPSEEK_API_KEY: ${DEEPSEEK_API_KEY}\r\n SILICONFLOW_API_KEY: ${SILICONFLOW_API_KEY}\r\n JWT_SECRET: ${JWT_SECRET}\r\n OSS_ENDPOINT: ${OSS_ENDPOINT:-oss-cn-guangzhou.aliyuncs.com}\r\n OSS_BUCKET: ${OSS_BUCKET:-moodcopilot}\r\n OSS_ACCESS_KEY: ${OSS_ACCESS_KEY}\r\n OSS_SECRET_KEY: ${OSS_SECRET_KEY}\r\n VISION_API_KEY: ${VISION_API_KEY}\r\n VISION_MODEL: ${VISION_MODEL:-qwen3-vl-flash}\r\n CORS_ALLOWED_ORIGINS: ${CORS_ALLOWED_ORIGINS:-https://moodcopilot.dpdns.org,http://localhost:5173}\r\n MAIL_HOST: ${MAIL_HOST:-smtp.qq.com}\r\n MAIL_PORT: ${MAIL_PORT:-465}\r\n MAIL_USERNAME: ${MAIL_USERNAME:-your-email@qq.com}\r\n MAIL_PASSWORD: ${MAIL_PASSWORD:-your-smtp-auth-code}\r\n deploy:\r\n resources:\r\n limits:\r\n cpus: '1.0'\r\n memory: 768M\r\n reservations:\r\n cpus: '0.5'\r\n memory: 256M\r\n restart: unless-stopped\r\n security_opt:\r\n - no-new-privileges:true\r\n depends_on:\r\n mysql:\r\n condition: service_healthy\r\n redis:\r\n condition: service_healthy\r\n\r\n frontend:\r\n build: ./frontend\r\n ports:\r\n - \"80:80\"\r\n restart: unless-stopped\r\n security_opt:\r\n - no-new-privileges:true\r\n depends_on:\r\n backend:\r\n condition: service_healthy\r\n\r\nvolumes:\r\n mysql_data:\r\n uploads_data:\r\n redis_data:\r\n"}, "fbb5691aa17fa1efee29aa5c9d296974f43b34f2": {"t": 1785748673.9187236, "n": 2929, "h": "ad49fde314d93d86", "c": "services:\r\n tunnel:\r\n image: cloudflare/cloudflared:latest\r\n container_name: cloudflare-tunnel\r\n restart: always\r\n command: tunnel --no-autoupdate run --token ${CF_TUNNEL_TOKEN}\r\n mysql:\r\n image: mysql:8.0\r\n environment:\r\n MYSQL_ROOT_PASSWORD: ${DB_PASSWORD:-root}\r\n MYSQL_DATABASE: mood_copilot_db\r\n expose:\r\n - \"3306\"\r\n volumes:\r\n - mysql_data:/var/lib/mysql\r\n deploy:\r\n resources:\r\n limits:\r\n memory: 512M\r\n restart: unless-stopped\r\n security_opt:\r\n - no-new-privileges:true\r\n command: >\r\n --innodb-buffer-pool-size=128M\r\n --max-connections=50\r\n --character-set-server=utf8mb4\r\n --collation-server=utf8mb4_unicode_ci\r\n healthcheck:\r\n test: [\"CMD\", \"mysqladmin\", \"ping\", \"-h\", \"localhost\"]\r\n interval: 10s\r\n retries: 5\r\n\r\n redis:\r\n image: redis/redis-stack-server:latest\r\n expose:\r\n - \"6379\"\r\n volumes:\r\n - redis_data:/data\r\n deploy:\r\n resources:\r\n limits:\r\n memory: 256M\r\n restart: unless-stopped\r\n security_opt:\r\n - no-new-privileges:true\r\n healthcheck:\r\n test: [\"CMD\", \"redis-cli\", \"ping\"]\r\n interval: 10s\r\n retries: 5\r\n\r\n backend:\r\n build: ./backend/moodcopilot\r\n expose:\r\n - \"18080\"\r\n volumes:\r\n - uploads_data:/app/uploads\r\n environment:\r\n SPRING_PROFILES_ACTIVE: docker\r\n DB_HOST: mysql\r\n DB_PORT: 3306\r\n DB_NAME: mood_copilot_db\r\n DB_USERNAME: root\r\n DB_PASSWORD: ${DB_PASSWORD:-root}\r\n REDIS_HOST: redis\r\n DEEPSEEK_API_KEY: ${DEEPSEEK_API_KEY}\r\n SILICONFLOW_API_KEY: ${SILICONFLOW_API_KEY}\r\n JWT_SECRET: ${JWT_SECRET}\r\n OSS_ENDPOINT: ${OSS_ENDPOINT:-oss-cn-guangzhou.aliyuncs.com}\r\n OSS_BUCKET: ${OSS_BUCKET:-moodcopilot}\r\n OSS_ACCESS_KEY: ${OSS_ACCESS_KEY}\r\n OSS_SECRET_KEY: ${OSS_SECRET_KEY}\r\n VISION_API_KEY: ${VISION_API_KEY}\r\n VISION_MODEL: ${VISION_MODEL:-qwen3-vl-flash}\r\n CORS_ALLOWED_ORIGINS: ${CORS_ALLOWED_ORIGINS:-https://moodcopilot.dpdns.org,http://localhost:5173}\r\n MAIL_HOST: ${MAIL_HOST:-smtp.qq.com}\r\n MAIL_PORT: ${MAIL_PORT:-465}\r\n MAIL_USERNAME: ${MAIL_USERNAME:-your-email@qq.com}\r\n MAIL_PASSWORD: ${MAIL_PASSWORD:-your-smtp-auth-code}\r\n deploy:\r\n resources:\r\n limits:\r\n cpus: '1.0'\r\n memory: 768M\r\n reservations:\r\n cpus: '0.5'\r\n memory: 256M\r\n restart: unless-stopped\r\n security_opt:\r\n - no-new-privileges:true\r\n depends_on:\r\n mysql:\r\n condition: service_healthy\r\n redis:\r\n condition: service_healthy\r\n\r\n frontend:\r\n build: ./frontend\r\n ports:\r\n - \"80:80\"\r\n restart: unless-stopped\r\n security_opt:\r\n - no-new-privileges:true\r\n depends_on:\r\n backend:\r\n condition: service_healthy\r\n\r\nvolumes:\r\n mysql_data:\r\n uploads_data:\r\n redis_data:\r\n"}, "dc0a6d7d04baec5b17cef0075c8bef2ff01b8fef": {"t": 1785748675.1715157, "n": 2819, "h": "4c61b4eed24cceda", "c": "services:\n tunnel:\n image: cloudflare/cloudflared:latest\n container_name: cloudflare-tunnel\n restart: always\n command: tunnel --no-autoupdate run --token ${CF_TUNNEL_TOKEN}\n mysql:\n image: mysql:8.0\n environment:\n MYSQL_ROOT_PASSWORD: ${DB_PASSWORD:-root}\n MYSQL_DATABASE: mood_copilot_db\n expose:\n - \"3306\"\n volumes:\n - mysql_data:/var/lib/mysql\n deploy:\n resources:\n limits:\n memory: 512M\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n command: >\n --innodb-buffer-pool-size=128M\n --max-connections=50\n --character-set-server=utf8mb4\n --collation-server=utf8mb4_unicode_ci\n healthcheck:\n test: [\"CMD\", \"mysqladmin\", \"ping\", \"-h\", \"localhost\"]\n interval: 10s\n retries: 5\n\n redis:\n image: redis/redis-stack-server:latest\n expose:\n - \"6379\"\n volumes:\n - redis_data:/data\n deploy:\n resources:\n limits:\n memory: 256M\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n healthcheck:\n test: [\"CMD\", \"redis-cli\", \"ping\"]\n interval: 10s\n retries: 5\n\n backend:\n build: ./backend/moodcopilot\n expose:\n - \"18080\"\n volumes:\n - uploads_data:/app/uploads\n environment:\n SPRING_PROFILES_ACTIVE: docker\n DB_HOST: mysql\n DB_PORT: 3306\n DB_NAME: mood_copilot_db\n DB_USERNAME: root\n DB_PASSWORD: ${DB_PASSWORD:-root}\n REDIS_HOST: redis\n DEEPSEEK_API_KEY: ${DEEPSEEK_API_KEY}\n SILICONFLOW_API_KEY: ${SILICONFLOW_API_KEY}\n JWT_SECRET: ${JWT_SECRET}\n OSS_ENDPOINT: ${OSS_ENDPOINT:-oss-cn-guangzhou.aliyuncs.com}\n OSS_BUCKET: ${OSS_BUCKET:-moodcopilot}\n OSS_ACCESS_KEY: ${OSS_ACCESS_KEY}\n OSS_SECRET_KEY: ${OSS_SECRET_KEY}\n VISION_API_KEY: ${VISION_API_KEY}\n VISION_MODEL: ${VISION_MODEL:-qwen3-vl-flash}\n CORS_ALLOWED_ORIGINS: ${CORS_ALLOWED_ORIGINS:-https://moodcopilot.dpdns.org,http://localhost:5173}\n MAIL_HOST: ${MAIL_HOST:-smtp.qq.com}\n MAIL_PORT: ${MAIL_PORT:-465}\n MAIL_USERNAME: ${MAIL_USERNAME:-your-email@qq.com}\n MAIL_PASSWORD: ${MAIL_PASSWORD:-your-smtp-auth-code}\n deploy:\n resources:\n limits:\n cpus: '1.0'\n memory: 768M\n reservations:\n cpus: '0.5'\n memory: 256M\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n depends_on:\n mysql:\n condition: service_healthy\n redis:\n condition: service_healthy\n\n frontend:\n build: ./frontend\n ports:\n - \"80:80\"\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n depends_on:\n backend:\n condition: service_healthy\n\nvolumes:\n mysql_data:\n uploads_data:\n redis_data:\n"}, "1aaac10207ffa575f000ca56a10f566345d12196": {"t": 1785748676.2455976, "n": 2869, "h": "7b063684325dbaf6", "c": "services:\n tunnel:\n image: cloudflare/cloudflared:latest\n container_name: cloudflare-tunnel\n restart: always\n # 把下面这行最后的 <你的Token> 换成你刚才复制的那一大串字符\n command: tunnel --no-autoupdate run --token REPLACE_WITH_CF_TUNNEL_TOKEN\n mysql:\n image: mysql:8.0\n environment:\n MYSQL_ROOT_PASSWORD: ${DB_PASSWORD:-root}\n MYSQL_DATABASE: mood_copilot_db\n expose:\n - \"3306\"\n volumes:\n - mysql_data:/var/lib/mysql\n deploy:\n resources:\n limits:\n memory: 512M\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n command: >\n --innodb-buffer-pool-size=128M\n --max-connections=50\n --character-set-server=utf8mb4\n --collation-server=utf8mb4_unicode_ci\n healthcheck:\n test: [\"CMD\", \"mysqladmin\", \"ping\", \"-h\", \"localhost\"]\n interval: 10s\n retries: 5\n\n redis:\n image: redis/redis-stack-server:latest\n expose:\n - \"6379\"\n volumes:\n - redis_data:/data\n deploy:\n resources:\n limits:\n memory: 256M\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n healthcheck:\n test: [\"CMD\", \"redis-cli\", \"ping\"]\n interval: 10s\n retries: 5\n\n backend:\n build: ./backend/moodcopilot\n expose:\n - \"18080\"\n volumes:\n - uploads_data:/app/uploads\n environment:\n SPRING_PROFILES_ACTIVE: docker\n DB_HOST: mysql\n DB_PORT: 3306\n DB_NAME: mood_copilot_db\n DB_USERNAME: root\n DB_PASSWORD: ${DB_PASSWORD:-root}\n REDIS_HOST: redis\n DEEPSEEK_API_KEY: ${DEEPSEEK_API_KEY}\n SILICONFLOW_API_KEY: ${SILICONFLOW_API_KEY}\n JWT_SECRET: ${JWT_SECRET}\n OSS_ENDPOINT: ${OSS_ENDPOINT:-oss-cn-guangzhou.aliyuncs.com}\n OSS_BUCKET: ${OSS_BUCKET:-moodcopilot}\n OSS_ACCESS_KEY: ${OSS_ACCESS_KEY}\n OSS_SECRET_KEY: ${OSS_SECRET_KEY}\n VISION_API_KEY: ${VISION_API_KEY}\n VISION_MODEL: ${VISION_MODEL:-qwen3-vl-flash}\n CORS_ALLOWED_ORIGINS: ${CORS_ALLOWED_ORIGINS:-https://moodcopilot.dpdns.org,http://localhost:5173}\n MAIL_HOST: ${MAIL_HOST:-smtp.qq.com}\n MAIL_PORT: ${MAIL_PORT:-465}\n MAIL_USERNAME: ${MAIL_USERNAME:-your-email@qq.com}\n MAIL_PASSWORD: ${MAIL_PASSWORD:-your-smtp-auth-code}\n deploy:\n resources:\n limits:\n cpus: '1.0'\n memory: 768M\n reservations:\n cpus: '0.5'\n memory: 256M\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n depends_on:\n mysql:\n condition: service_healthy\n redis:\n condition: service_healthy\n\n frontend:\n build: ./frontend\n ports:\n - \"80:80\"\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n depends_on:\n backend:\n condition: service_healthy\n\nvolumes:\n mysql_data:\n uploads_data:\n redis_data:\n"}, "6b64f759971e186b62848e73ec7b733111958f68": {"t": 1785748678.3317354, "n": 2969, "h": "b200f17bb9ec2afa", "c": "services:\n tunnel:\n image: cloudflare/cloudflared:latest\n container_name: cloudflare-tunnel\n restart: always\n # 把下面这行最后的 <你的Token> 换成你刚才复制的那一大串字符\n command: tunnel --no-autoupdate run --token REPLACE_WITH_CF_TUNNEL_TOKEN\n mysql:\n image: mysql:8.0\n environment:\n MYSQL_ROOT_PASSWORD: ${DB_PASSWORD:-root}\n MYSQL_DATABASE: mood_copilot_db\n expose:\n - \"3306\"\n volumes:\n - mysql_data:/var/lib/mysql\n deploy:\n resources:\n limits:\n memory: 512M\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n command: >\n --innodb-buffer-pool-size=128M\n --max-connections=50\n --character-set-server=utf8mb4\n --collation-server=utf8mb4_unicode_ci\n healthcheck:\n test: [\"CMD\", \"mysqladmin\", \"ping\", \"-h\", \"localhost\"]\n interval: 10s\n retries: 5\n\n redis:\n image: redis/redis-stack-server:latest\n expose:\n - \"6379\"\n volumes:\n - redis_data:/data\n deploy:\n resources:\n limits:\n memory: 256M\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n healthcheck:\n test: [\"CMD\", \"redis-cli\", \"ping\"]\n interval: 10s\n retries: 5\n\n backend:\n build: ./backend/moodcopilot\n expose:\n - \"18080\"\n volumes:\n - uploads_data:/app/uploads\n environment:\n SPRING_PROFILES_ACTIVE: docker\n DB_HOST: mysql\n DB_PORT: 3306\n DB_NAME: mood_copilot_db\n DB_USERNAME: root\n DB_PASSWORD: ${DB_PASSWORD:-root}\n REDIS_HOST: redis\n DEEPSEEK_API_KEY: ${DEEPSEEK_API_KEY}\n SILICONFLOW_API_KEY: ${SILICONFLOW_API_KEY}\n JWT_SECRET: ${JWT_SECRET}\n TURNSTILE_SECRET_KEY: ${TURNSTILE_SECRET_KEY}\n TURNSTILE_SITE_KEY: ${TURNSTILE_SITE_KEY}\n OSS_ENDPOINT: ${OSS_ENDPOINT:-oss-cn-guangzhou.aliyuncs.com}\n OSS_BUCKET: ${OSS_BUCKET:-moodcopilot}\n OSS_ACCESS_KEY: ${OSS_ACCESS_KEY}\n OSS_SECRET_KEY: ${OSS_SECRET_KEY}\n VISION_API_KEY: ${VISION_API_KEY}\n VISION_MODEL: ${VISION_MODEL:-qwen3-vl-flash}\n CORS_ALLOWED_ORIGINS: ${CORS_ALLOWED_ORIGINS:-https://moodcopilot.dpdns.org,http://localhost:5173}\n MAIL_HOST: ${MAIL_HOST:-smtp.qq.com}\n MAIL_PORT: ${MAIL_PORT:-465}\n MAIL_USERNAME: ${MAIL_USERNAME:-your-email@qq.com}\n MAIL_PASSWORD: ${MAIL_PASSWORD:-your-smtp-auth-code}\n deploy:\n resources:\n limits:\n cpus: '1.0'\n memory: 768M\n reservations:\n cpus: '0.5'\n memory: 256M\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n depends_on:\n mysql:\n condition: service_healthy\n redis:\n condition: service_healthy\n\n frontend:\n build: ./frontend\n ports:\n - \"80:80\"\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n depends_on:\n backend:\n condition: service_healthy\n\nvolumes:\n mysql_data:\n uploads_data:\n redis_data:\n"}, "a2639b2dd9f455d079ca5a06dd8188a4d84e0b2f": {"t": 1785748680.4093013, "n": 2685, "h": "045f4e9a5eba33d8", "c": "services:\n tunnel:\n image: cloudflare/cloudflared:latest\n container_name: cloudflare-tunnel\n restart: always\n # 把下面这行最后的 <你的Token> 换成你刚才复制的那一大串字符\n command: tunnel --no-autoupdate run --token REPLACE_WITH_CF_TUNNEL_TOKEN\n mysql:\n image: mysql:8.0\n environment:\n MYSQL_ROOT_PASSWORD: ${DB_PASSWORD:-root}\n MYSQL_DATABASE: mood_copilot_db\n expose:\n - \"3306\"\n volumes:\n - mysql_data:/var/lib/mysql\n deploy:\n resources:\n limits:\n memory: 512M\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n command: >\n --innodb-buffer-pool-size=128M\n --max-connections=50\n --character-set-server=utf8mb4\n --collation-server=utf8mb4_unicode_ci\n healthcheck:\n test: [\"CMD\", \"mysqladmin\", \"ping\", \"-h\", \"localhost\"]\n interval: 10s\n retries: 5\n\n redis:\n image: redis/redis-stack-server:latest\n expose:\n - \"6379\"\n volumes:\n - redis_data:/data\n deploy:\n resources:\n limits:\n memory: 256M\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n healthcheck:\n test: [\"CMD\", \"redis-cli\", \"ping\"]\n interval: 10s\n retries: 5\n\n backend:\n build: ./backend/moodcopilot\n expose:\n - \"18080\"\n volumes:\n - uploads_data:/app/uploads\n environment:\n SPRING_PROFILES_ACTIVE: docker\n DB_HOST: mysql\n DB_PORT: 3306\n DB_NAME: mood_copilot_db\n DB_USERNAME: root\n DB_PASSWORD: ${DB_PASSWORD:-root}\n REDIS_HOST: redis\n DEEPSEEK_API_KEY: ${DEEPSEEK_API_KEY}\n SILICONFLOW_API_KEY: ${SILICONFLOW_API_KEY}\n JWT_SECRET: ${JWT_SECRET}\n TURNSTILE_SECRET_KEY: ${TURNSTILE_SECRET_KEY}\n TURNSTILE_SITE_KEY: ${TURNSTILE_SITE_KEY}\n CORS_ALLOWED_ORIGINS: ${CORS_ALLOWED_ORIGINS:-https://moodcopilot.dpdns.org,http://localhost:5173}\n MAIL_HOST: ${MAIL_HOST:-smtp.qq.com}\n MAIL_PORT: ${MAIL_PORT:-465}\n MAIL_USERNAME: ${MAIL_USERNAME:-your-email@qq.com}\n MAIL_PASSWORD: ${MAIL_PASSWORD:-your-smtp-auth-code}\n deploy:\n resources:\n limits:\n cpus: '1.0'\n memory: 768M\n reservations:\n cpus: '0.5'\n memory: 256M\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n depends_on:\n mysql:\n condition: service_healthy\n redis:\n condition: service_healthy\n\n frontend:\n build: ./frontend\n ports:\n - \"80:80\"\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n depends_on:\n backend:\n condition: service_healthy\n\nvolumes:\n mysql_data:\n uploads_data:\n redis_data:\n"}, "131b18c50231c6155a6f29ab8f37ce9c544a1277": {"t": 1785748681.631552, "n": 2546, "h": "5ab2b8b311671145", "c": "services:\n tunnel:\n image: cloudflare/cloudflared:latest\n container_name: cloudflare-tunnel\n restart: always\n # 把下面这行最后的 <你的Token> 换成你刚才复制的那一大串字符\n command: tunnel --no-autoupdate run --token REPLACE_WITH_CF_TUNNEL_TOKEN\n mysql:\n image: mysql:8.0\n environment:\n MYSQL_ROOT_PASSWORD: ${DB_PASSWORD:-root}\n MYSQL_DATABASE: mood_copilot_db\n expose:\n - \"3306\"\n volumes:\n - mysql_data:/var/lib/mysql\n deploy:\n resources:\n limits:\n memory: 512M\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n command: >\n --innodb-buffer-pool-size=128M\n --max-connections=50\n --character-set-server=utf8mb4\n --collation-server=utf8mb4_unicode_ci\n healthcheck:\n test: [\"CMD\", \"mysqladmin\", \"ping\", \"-h\", \"localhost\"]\n interval: 10s\n retries: 5\n\n redis:\n image: redis/redis-stack-server:latest\n expose:\n - \"6379\"\n volumes:\n - redis_data:/data\n deploy:\n resources:\n limits:\n memory: 256M\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n healthcheck:\n test: [\"CMD\", \"redis-cli\", \"ping\"]\n interval: 10s\n retries: 5\n\n backend:\n build: ./backend/moodcopilot\n expose:\n - \"18080\"\n volumes:\n - uploads_data:/app/uploads\n environment:\n SPRING_PROFILES_ACTIVE: docker\n DB_HOST: mysql\n DB_PORT: 3306\n DB_NAME: mood_copilot_db\n DB_USERNAME: root\n DB_PASSWORD: ${DB_PASSWORD:-root}\n REDIS_HOST: redis\n DEEPSEEK_API_KEY: ${DEEPSEEK_API_KEY}\n SILICONFLOW_API_KEY: ${SILICONFLOW_API_KEY}\n JWT_SECRET: ${JWT_SECRET:-bW9vZGNvcGlsb3Qtc2VjcmV0LWtleS1mb3ItZGV2ZWxvcG1lbnQtb25seS0yMDI2}\n MAIL_HOST: ${MAIL_HOST:-smtp.qq.com}\n MAIL_PORT: ${MAIL_PORT:-465}\n MAIL_USERNAME: ${MAIL_USERNAME:-your-email@qq.com}\n MAIL_PASSWORD: ${MAIL_PASSWORD:-your-smtp-auth-code}\n deploy:\n resources:\n limits:\n cpus: '1.0'\n memory: 768M\n reservations:\n cpus: '0.5'\n memory: 256M\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n depends_on:\n mysql:\n condition: service_healthy\n redis:\n condition: service_healthy\n\n frontend:\n build: ./frontend\n ports:\n - \"80:80\"\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n depends_on:\n backend:\n condition: service_healthy\n\nvolumes:\n mysql_data:\n uploads_data:\n redis_data:\n"}, "66b17485eb9df5cc144ffc034c3b0c6e2aaa87d4": {"t": 1785748682.738364, "n": 2427, "h": "2540af3bd8134819", "c": "services:\n tunnel:\n image: cloudflare/cloudflared:latest\n container_name: cloudflare-tunnel\n restart: always\n # 把下面这行最后的 <你的Token> 换成你刚才复制的那一大串字符\n command: tunnel --no-autoupdate run --token REPLACE_WITH_CF_TUNNEL_TOKEN\n mysql:\n image: mysql:8.0\n environment:\n MYSQL_ROOT_PASSWORD: ${DB_PASSWORD:-root}\n MYSQL_DATABASE: mood_copilot_db\n expose:\n - \"3306\"\n volumes:\n - mysql_data:/var/lib/mysql\n deploy:\n resources:\n limits:\n memory: 512M\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n command: >\n --innodb-buffer-pool-size=128M\n --max-connections=50\n --character-set-server=utf8mb4\n --collation-server=utf8mb4_unicode_ci\n healthcheck:\n test: [\"CMD\", \"mysqladmin\", \"ping\", \"-h\", \"localhost\"]\n interval: 10s\n retries: 5\n\n redis:\n image: redis:7-alpine\n expose:\n - \"6379\"\n deploy:\n resources:\n limits:\n memory: 128M\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n healthcheck:\n test: [\"CMD\", \"redis-cli\", \"ping\"]\n interval: 10s\n retries: 5\n\n backend:\n build: ./backend/moodcopilot\n expose:\n - \"18080\"\n volumes:\n - uploads_data:/app/uploads\n environment:\n SPRING_PROFILES_ACTIVE: docker\n DB_HOST: mysql\n DB_PORT: 3306\n DB_NAME: mood_copilot_db\n DB_USERNAME: root\n DB_PASSWORD: ${DB_PASSWORD:-root}\n REDIS_HOST: redis\n DEEPSEEK_API_KEY: ${DEEPSEEK_API_KEY}\n JWT_SECRET: ${JWT_SECRET:-bW9vZGNvcGlsb3Qtc2VjcmV0LWtleS1mb3ItZGV2ZWxvcG1lbnQtb25seS0yMDI2}\n MAIL_HOST: ${MAIL_HOST:-smtp.qq.com}\n MAIL_PORT: ${MAIL_PORT:-465}\n MAIL_USERNAME: ${MAIL_USERNAME:-your-email@qq.com}\n MAIL_PASSWORD: ${MAIL_PASSWORD:-your-smtp-auth-code}\n deploy:\n resources:\n limits:\n cpus: '1.0'\n memory: 768M\n reservations:\n cpus: '0.5'\n memory: 256M\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n depends_on:\n mysql:\n condition: service_healthy\n redis:\n condition: service_healthy\n\n frontend:\n build: ./frontend\n ports:\n - \"80:80\"\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n depends_on:\n backend:\n condition: service_healthy\n\nvolumes:\n mysql_data:\n uploads_data:\n"}, "7812974ed826ae0017ce139f6075a01e4d647a6d": {"t": 1785748683.8326557, "n": 2364, "h": "f4b1a01831390be6", "c": "services:\n tunnel:\n image: cloudflare/cloudflared:latest\n container_name: cloudflare-tunnel\n restart: always\n # 把下面这行最后的 <你的Token> 换成你刚才复制的那一大串字符\n command: tunnel --no-autoupdate run --token REPLACE_WITH_CF_TUNNEL_TOKEN\n mysql:\n image: mysql:8.0\n environment:\n MYSQL_ROOT_PASSWORD: ${DB_PASSWORD:-root}\n MYSQL_DATABASE: mood_copilot_db\n expose:\n - \"3306\"\n volumes:\n - mysql_data:/var/lib/mysql\n deploy:\n resources:\n limits:\n memory: 512M\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n command: >\n --innodb-buffer-pool-size=128M\n --max-connections=50\n --character-set-server=utf8mb4\n --collation-server=utf8mb4_unicode_ci\n healthcheck:\n test: [\"CMD\", \"mysqladmin\", \"ping\", \"-h\", \"localhost\"]\n interval: 10s\n retries: 5\n\n redis:\n image: redis:7-alpine\n expose:\n - \"6379\"\n deploy:\n resources:\n limits:\n memory: 128M\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n healthcheck:\n test: [\"CMD\", \"redis-cli\", \"ping\"]\n interval: 10s\n retries: 5\n\n backend:\n build: ./backend/moodcopilot\n expose:\n - \"18080\"\n environment:\n SPRING_PROFILES_ACTIVE: docker\n DB_HOST: mysql\n DB_PORT: 3306\n DB_NAME: mood_copilot_db\n DB_USERNAME: root\n DB_PASSWORD: ${DB_PASSWORD:-root}\n REDIS_HOST: redis\n DEEPSEEK_API_KEY: ${DEEPSEEK_API_KEY}\n JWT_SECRET: ${JWT_SECRET:-bW9vZGNvcGlsb3Qtc2VjcmV0LWtleS1mb3ItZGV2ZWxvcG1lbnQtb25seS0yMDI2}\n MAIL_HOST: ${MAIL_HOST:-smtp.qq.com}\n MAIL_PORT: ${MAIL_PORT:-465}\n MAIL_USERNAME: ${MAIL_USERNAME:-your-email@qq.com}\n MAIL_PASSWORD: ${MAIL_PASSWORD:-your-smtp-auth-code}\n deploy:\n resources:\n limits:\n cpus: '1.0'\n memory: 768M\n reservations:\n cpus: '0.5'\n memory: 256M\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n depends_on:\n mysql:\n condition: service_healthy\n redis:\n condition: service_healthy\n\n frontend:\n build: ./frontend\n ports:\n - \"80:80\"\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n depends_on:\n backend:\n condition: service_healthy\n\nvolumes:\n mysql_data:\n"}, "a60b91aa7daeb8eaaf3218e25ac2e741029409ba": {"t": 1785748685.368903, "n": 2170, "h": "999e4454c0a92b08", "c": "services:\n tunnel:\n image: cloudflare/cloudflared:latest\n container_name: cloudflare-tunnel\n restart: always\n # 把下面这行最后的 <你的Token> 换成你刚才复制的那一大串字符\n command: tunnel --no-autoupdate run --token REPLACE_WITH_CF_TUNNEL_TOKEN\n mysql:\n image: mysql:8.0\n environment:\n MYSQL_ROOT_PASSWORD: ${DB_PASSWORD:-root}\n MYSQL_DATABASE: mood_copilot_db\n expose:\n - \"3306\"\n volumes:\n - mysql_data:/var/lib/mysql\n deploy:\n resources:\n limits:\n memory: 512M\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n command: >\n --innodb-buffer-pool-size=128M\n --max-connections=50\n --character-set-server=utf8mb4\n --collation-server=utf8mb4_unicode_ci\n healthcheck:\n test: [\"CMD\", \"mysqladmin\", \"ping\", \"-h\", \"localhost\"]\n interval: 10s\n retries: 5\n\n redis:\n image: redis:7-alpine\n expose:\n - \"6379\"\n deploy:\n resources:\n limits:\n memory: 128M\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n healthcheck:\n test: [\"CMD\", \"redis-cli\", \"ping\"]\n interval: 10s\n retries: 5\n\n backend:\n build: ./backend/moodcopilot\n expose:\n - \"18080\"\n environment:\n SPRING_PROFILES_ACTIVE: docker\n DB_HOST: mysql\n DB_PORT: 3306\n DB_NAME: mood_copilot_db\n DB_USERNAME: root\n DB_PASSWORD: ${DB_PASSWORD:-root}\n REDIS_HOST: redis\n DEEPSEEK_API_KEY: ${DEEPSEEK_API_KEY}\n JWT_SECRET: ${JWT_SECRET:-bW9vZGNvcGlsb3Qtc2VjcmV0LWtleS1mb3ItZGV2ZWxvcG1lbnQtb25seS0yMDI2}\n deploy:\n resources:\n limits:\n cpus: '1.0'\n memory: 768M\n reservations:\n cpus: '0.5'\n memory: 256M\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n depends_on:\n mysql:\n condition: service_healthy\n redis:\n condition: service_healthy\n\n frontend:\n build: ./frontend\n ports:\n - \"80:80\"\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n depends_on:\n backend:\n condition: service_healthy\n\nvolumes:\n mysql_data:\n"}, "8faeac7019451dec9620b41d29074fb9a8bd7414": {"t": 1785748686.4432962, "n": 2136, "h": "da4c549921cf5b0c", "c": "services:\n tunnel:\n image: cloudflare/cloudflared:latest\n container_name: cloudflare-tunnel\n restart: always\n # 把下面这行最后的 <你的Token> 换成你刚才复制的那一大串字符\n command: tunnel --no-autoupdate run --token REPLACE_WITH_CF_TUNNEL_TOKEN\n mysql:\n image: mysql:8.0\n environment:\n MYSQL_ROOT_PASSWORD: ${DB_PASSWORD:-root}\n MYSQL_DATABASE: mood_copilot_db\n expose:\n - \"3306\"\n volumes:\n - mysql_data:/var/lib/mysql\n deploy:\n resources:\n limits:\n memory: 512M\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n command: >\n --innodb-buffer-pool-size=128M\n --max-connections=50\n --character-set-server=utf8mb4\n --collation-server=utf8mb4_unicode_ci\n healthcheck:\n test: [\"CMD\", \"mysqladmin\", \"ping\", \"-h\", \"localhost\"]\n interval: 10s\n retries: 5\n\n redis:\n image: redis:7-alpine\n expose:\n - \"6379\"\n deploy:\n resources:\n limits:\n memory: 128M\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n healthcheck:\n test: [\"CMD\", \"redis-cli\", \"ping\"]\n interval: 10s\n retries: 5\n\n backend:\n build: ./backend/moodcopilot\n expose:\n - \"18080\"\n environment:\n SPRING_PROFILES_ACTIVE: docker\n DB_HOST: mysql\n DB_PORT: 3306\n DB_NAME: mood_copilot_db\n DB_USERNAME: root\n DB_PASSWORD: ${DB_PASSWORD:-root}\n REDIS_HOST: redis\n DEEPSEEK_API_KEY: ${DEEPSEEK_API_KEY}\n JWT_SECRET: ${JWT_SECRET:-bW9vZGNvcGlsb3Qtc2VjcmV0LWtleS1mb3ItZGV2ZWxvcG1lbnQtb25seS0yMDI2}\n deploy:\n resources:\n limits:\n cpus: '1.0'\n memory: 768M\n reservations:\n cpus: '0.5'\n memory: 256M\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n depends_on:\n mysql:\n condition: service_healthy\n redis:\n condition: service_healthy\n\n frontend:\n build: ./frontend\n ports:\n - \"80:80\"\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n depends_on:\n - backend\n\nvolumes:\n mysql_data:\n"}, "911c6285d440c2d11517f9231d0e5d311da02223": {"t": 1785748687.54496, "n": 2022, "h": "a8bc351da0395a9f", "c": "services:\n tunnel:\n image: cloudflare/cloudflared:latest\n container_name: cloudflare-tunnel\n restart: unless-stopped\n command: tunnel run --token REPLACE_WITH_CF_TUNNEL_TOKEN\n mysql:\n image: mysql:8.0\n environment:\n MYSQL_ROOT_PASSWORD: ${DB_PASSWORD:-root}\n MYSQL_DATABASE: mood_copilot_db\n expose:\n - \"3306\"\n volumes:\n - mysql_data:/var/lib/mysql\n deploy:\n resources:\n limits:\n memory: 512M\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n command: >\n --innodb-buffer-pool-size=128M\n --max-connections=50\n --character-set-server=utf8mb4\n --collation-server=utf8mb4_unicode_ci\n healthcheck:\n test: [\"CMD\", \"mysqladmin\", \"ping\", \"-h\", \"localhost\"]\n interval: 10s\n retries: 5\n\n redis:\n image: redis:7-alpine\n expose:\n - \"6379\"\n deploy:\n resources:\n limits:\n memory: 128M\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n healthcheck:\n test: [\"CMD\", \"redis-cli\", \"ping\"]\n interval: 10s\n retries: 5\n\n backend:\n build: ./backend/moodcopilot\n expose:\n - \"18080\"\n environment:\n SPRING_PROFILES_ACTIVE: docker\n DB_HOST: mysql\n DB_PORT: 3306\n DB_NAME: mood_copilot_db\n DB_USERNAME: root\n DB_PASSWORD: ${DB_PASSWORD:-root}\n REDIS_HOST: redis\n DEEPSEEK_API_KEY: ${DEEPSEEK_API_KEY}\n JWT_SECRET: ${JWT_SECRET}\n deploy:\n resources:\n limits:\n cpus: '1.0'\n memory: 768M\n reservations:\n cpus: '0.5'\n memory: 256M\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n depends_on:\n mysql:\n condition: service_healthy\n redis:\n condition: service_healthy\n\n frontend:\n build: ./frontend\n ports:\n - \"80:80\"\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n depends_on:\n - backend\n\nvolumes:\n mysql_data:\n"}, "6ce46b8477874753a7d9c20ea8fd2a06ae812d25": {"t": 1785748688.638549, "n": 1844, "h": "a021de28c7c78ddd", "c": "services:\n mysql:\n image: mysql:8.0\n environment:\n MYSQL_ROOT_PASSWORD: ${DB_PASSWORD:-root}\n MYSQL_DATABASE: mood_copilot_db\n expose:\n - \"3306\"\n volumes:\n - mysql_data:/var/lib/mysql\n deploy:\n resources:\n limits:\n memory: 512M\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n command: >\n --innodb-buffer-pool-size=128M\n --max-connections=50\n --character-set-server=utf8mb4\n --collation-server=utf8mb4_unicode_ci\n healthcheck:\n test: [\"CMD\", \"mysqladmin\", \"ping\", \"-h\", \"localhost\"]\n interval: 10s\n retries: 5\n\n redis:\n image: redis:7-alpine\n expose:\n - \"6379\"\n deploy:\n resources:\n limits:\n memory: 128M\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n healthcheck:\n test: [\"CMD\", \"redis-cli\", \"ping\"]\n interval: 10s\n retries: 5\n\n backend:\n build: ./backend/moodcopilot\n expose:\n - \"18080\"\n environment:\n SPRING_PROFILES_ACTIVE: docker\n DB_HOST: mysql\n DB_PORT: 3306\n DB_NAME: mood_copilot_db\n DB_USERNAME: root\n DB_PASSWORD: ${DB_PASSWORD:-root}\n REDIS_HOST: redis\n DEEPSEEK_API_KEY: ${DEEPSEEK_API_KEY}\n JWT_SECRET: ${JWT_SECRET}\n deploy:\n resources:\n limits:\n cpus: '1.0'\n memory: 768M\n reservations:\n cpus: '0.5'\n memory: 256M\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n depends_on:\n mysql:\n condition: service_healthy\n redis:\n condition: service_healthy\n\n frontend:\n build: ./frontend\n ports:\n - \"80:80\"\n restart: unless-stopped\n security_opt:\n - no-new-privileges:true\n depends_on:\n - backend\n\nvolumes:\n mysql_data:\n"}, "b0bf12e67ca453f2cf401a993cb5e89043a6b219": {"t": 1785748689.7299578, "n": 1661, "h": "43c57a56b5622887", "c": "services:\n mysql:\n image: mysql:8.0\n environment:\n MYSQL_ROOT_PASSWORD: ${DB_PASSWORD:-root}\n MYSQL_DATABASE: mood_copilot_db\n ports:\n - \"3307:3306\"\n volumes:\n - mysql_data:/var/lib/mysql\n deploy:\n resources:\n limits:\n memory: 512M\n restart: unless-stopped\n command: >\n --innodb-buffer-pool-size=128M\n --max-connections=50\n --character-set-server=utf8mb4\n --collation-server=utf8mb4_unicode_ci\n healthcheck:\n test: [\"CMD\", \"mysqladmin\", \"ping\", \"-h\", \"localhost\"]\n interval: 10s\n retries: 5\n\n redis:\n image: redis:7-alpine\n ports:\n - \"6379:6379\"\n deploy:\n resources:\n limits:\n memory: 128M\n restart: unless-stopped\n healthcheck:\n test: [\"CMD\", \"redis-cli\", \"ping\"]\n interval: 10s\n retries: 5\n\n backend:\n build: ./backend/moodcopilot\n ports:\n - \"18080:18080\"\n environment:\n SPRING_PROFILES_ACTIVE: docker\n DB_HOST: mysql\n DB_PORT: 3306\n DB_NAME: mood_copilot_db\n DB_USERNAME: root\n DB_PASSWORD: ${DB_PASSWORD:-root}\n REDIS_HOST: redis\n DEEPSEEK_API_KEY: ${DEEPSEEK_API_KEY}\n JWT_SECRET: ${JWT_SECRET}\n deploy:\n resources:\n limits:\n cpus: '1.0'\n memory: 768M\n reservations:\n cpus: '0.5'\n memory: 256M\n restart: unless-stopped\n depends_on:\n mysql:\n condition: service_healthy\n redis:\n condition: service_healthy\n\n frontend:\n build: ./frontend\n ports:\n - \"80:80\"\n restart: unless-stopped\n depends_on:\n - backend\n\nvolumes:\n mysql_data:\n"}, "d820bccb05f0250e9652244749dc0f0819ddddf9": {"t": 1785748690.819108, "n": 1096, "h": "f4f1249cf2a2459c", "c": "services:\n mysql:\n image: mysql:8.0\n environment:\n MYSQL_ROOT_PASSWORD: ${DB_PASSWORD:-root}\n MYSQL_DATABASE: mood_copilot_db\n ports:\n - \"3307:3306\"\n volumes:\n - mysql_data:/var/lib/mysql\n healthcheck:\n test: [\"CMD\", \"mysqladmin\", \"ping\", \"-h\", \"localhost\"]\n interval: 10s\n retries: 5\n\n redis:\n image: redis:7-alpine\n ports:\n - \"6379:6379\"\n healthcheck:\n test: [\"CMD\", \"redis-cli\", \"ping\"]\n interval: 10s\n retries: 5\n\n backend:\n build: ./backend/moodcopilot\n ports:\n - \"18080:18080\"\n environment:\n SPRING_PROFILES_ACTIVE: docker\n DB_HOST: mysql\n DB_PORT: 3306\n DB_NAME: mood_copilot_db\n DB_USERNAME: root\n DB_PASSWORD: ${DB_PASSWORD:-root}\n REDIS_HOST: redis\n DEEPSEEK_API_KEY: ${DEEPSEEK_API_KEY}\n JWT_SECRET: ${JWT_SECRET}\n depends_on:\n mysql:\n condition: service_healthy\n redis:\n condition: service_healthy\n\n frontend:\n build: ./frontend\n ports:\n - \"80:80\"\n depends_on:\n - backend\n\nvolumes:\n mysql_data:\n"}}, ".env.example": {"a717f843c1ead3557db15b2ce3238391caf68185": {"t": 1786068616.1275156, "n": 2007, "h": "cab0b3243e7fc5de", "c": "# ====================================\n# MoodCopilot 环境变量配置\n# 复制此文件为 .env 并填入真实值\n# cp .env.example .env\n# ====================================\n\n# ====================================\n# 数据库配置\n# ====================================\nDB_HOST=localhost\nDB_PORT=3306\nDB_NAME=mood_copilot_db\nDB_USERNAME=root\nDB_PASSWORD=your_db_password\n\n# ====================================\n# Redis 配置(需 redis-stack-server,含 RediSearch 向量引擎)\n# ====================================\nREDIS_HOST=localhost\nREDIS_PORT=6379\nREDIS_PASSWORD=your_redis_password\n\n# ====================================\n# 邮箱配置(验证码发送)\n# ====================================\nMAIL_HOST=smtp.qq.com\nMAIL_PORT=465\nMAIL_USERNAME=your_email@qq.com\nMAIL_PASSWORD=your_smtp_auth_code\n\n# ====================================\n# DeepSeek AI 配置\n# ====================================\nDEEPSEEK_API_KEY=sk-your_deepseek_api_key\nDEEPSEEK_BASE_URL=https://api.deepseek.com\nDEEPSEEK_MODEL=deepseek-v4-flash\nDEEPSEEK_REASONING_MODEL=deepseek-v4-pro\n\n# ====================================\n# 向量模型配置(SiliconFlow BAAI/bge-m3)\n# ====================================\nSILICONFLOW_API_KEY=sk-your_siliconflow_api_key\n\n# ====================================\n# JWT 签名密钥(生产环境请更换为随机字符串)\n# ====================================\nJWT_SECRET=change_me_to_a_random_secret\n\n# ====================================\n# 阿里云 OSS 对象存储配置\n# ====================================\nOSS_ENDPOINT=oss-cn-guangzhou.aliyuncs.com\nOSS_BUCKET=your_bucket_name\nOSS_ACCESS_KEY=your_oss_access_key\nOSS_SECRET_KEY=your_oss_secret_key\n\n# ====================================\n# 视觉模型配置(阿里云百炼 DashScope qwen3-vl-flash)\n# ====================================\nVISION_API_KEY=sk-your_dashscope_api_key\nVISION_MODEL=qwen3-vl-flash\n\n# ====================================\n# Cloudflare Tunnel Token\n# ====================================\nCF_TUNNEL_TOKEN=your_cloudflare_tunnel_token\n\n# ====================================\n# CORS 允许的来源(逗号分隔)\n# ====================================\nCORS_ALLOWED_ORIGINS=http://localhost:5173\n\n"}}}}