From 2b9c1aa7d8a43aaab3af503afc5ef03312d33da1 Mon Sep 17 00:00:00 2001 From: lzh Date: Tue, 13 Jan 2026 11:52:27 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=B7=BB=E5=8A=A0=E6=89=80=E6=9C=89?= =?UTF-8?q?=E6=A0=B8=E5=BF=83=E6=9C=8D=E5=8A=A1=E7=9A=84=E7=94=9F=E4=BA=A7?= =?UTF-8?q?=E7=8E=AF=E5=A2=83=E9=85=8D=E7=BD=AE=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 创建 application-prod.yaml 支持环境变量占位符 - 支持 Docker Compose 环境变量注入 - 支持 Nacos 配置中心覆盖 - 涵盖 5 个核心服务: gateway, system, infra, iot-server, iot-gateway --- .../src/main/resources/application-prod.yaml | 72 +++++++++ .../src/main/resources/application-prod.yaml | 139 ++++++++++++++++ .../src/main/resources/application-prod.yaml | 86 ++++++++++ .../src/main/resources/application-prod.yaml | 139 ++++++++++++++++ .../src/main/resources/application-prod.yaml | 148 ++++++++++++++++++ 5 files changed, 584 insertions(+) create mode 100644 viewsh-gateway/src/main/resources/application-prod.yaml create mode 100644 viewsh-module-infra/viewsh-module-infra-server/src/main/resources/application-prod.yaml create mode 100644 viewsh-module-iot/viewsh-module-iot-gateway/src/main/resources/application-prod.yaml create mode 100644 viewsh-module-iot/viewsh-module-iot-server/src/main/resources/application-prod.yaml create mode 100644 viewsh-module-system/viewsh-module-system-server/src/main/resources/application-prod.yaml diff --git a/viewsh-gateway/src/main/resources/application-prod.yaml b/viewsh-gateway/src/main/resources/application-prod.yaml new file mode 100644 index 0000000..6db0b12 --- /dev/null +++ b/viewsh-gateway/src/main/resources/application-prod.yaml @@ -0,0 +1,72 @@ +--- #################### 注册中心 + 配置中心相关配置 #################### + +spring: + cloud: + nacos: + server-addr: ${NACOS_SERVER_ADDR:127.0.0.1:8848} + username: ${NACOS_USERNAME:} + password: ${NACOS_PASSWORD:} + discovery: + namespace: ${NACOS_NAMESPACE:} + group: ${NACOS_GROUP:DEFAULT_GROUP} + metadata: + version: 1.0.0 + config: + namespace: ${NACOS_NAMESPACE:} + group: ${NACOS_GROUP:DEFAULT_GROUP} + +--- #################### Redis 配置 #################### +spring: + data: + redis: + host: ${REDIS_HOST:127.0.0.1} + port: ${REDIS_PORT:6379} + database: ${REDIS_DATABASE:0} + password: ${REDIS_PASSWORD:} + timeout: 5000ms + lettuce: + pool: + max-active: 8 + max-wait: -1ms + max-idle: 8 + min-idle: 0 + +--- #################### 服务保障相关配置 #################### + +lock4j: + acquire-timeout: 3000 + expire: 30000 + +--- #################### 监控相关配置 #################### + +management: + endpoints: + web: + base-path: /actuator + exposure: + include: '*' + +spring: + boot: + admin: + client: + instance: + service-host-type: IP + username: ${SPRING_BOOT_ADMIN_USERNAME:admin} + password: ${SPRING_BOOT_ADMIN_PASSWORD:admin} + +logging: + level: + root: INFO + com.viewsh: ${LOG_LEVEL:INFO} + file: + name: ${LOG_FILE_PATH:/app/logs}/${spring.application.name}.log + +--- #################### 芋道相关配置 #################### + +viewsh: + demo: false + env: + tag: ${HOSTNAME:prod} + security: + mock-enable: false diff --git a/viewsh-module-infra/viewsh-module-infra-server/src/main/resources/application-prod.yaml b/viewsh-module-infra/viewsh-module-infra-server/src/main/resources/application-prod.yaml new file mode 100644 index 0000000..6b500a1 --- /dev/null +++ b/viewsh-module-infra/viewsh-module-infra-server/src/main/resources/application-prod.yaml @@ -0,0 +1,139 @@ +--- #################### 注册中心 + 配置中心相关配置 #################### + +spring: + cloud: + nacos: + server-addr: ${NACOS_SERVER_ADDR:127.0.0.1:8848} + username: ${NACOS_USERNAME:} + password: ${NACOS_PASSWORD:} + discovery: + namespace: ${NACOS_NAMESPACE:} + group: ${NACOS_GROUP:DEFAULT_GROUP} + metadata: + version: 1.0.0 + config: + namespace: ${NACOS_NAMESPACE:} + group: ${NACOS_GROUP:DEFAULT_GROUP} + +--- #################### 数据库相关配置 #################### +spring: + datasource: + druid: + web-stat-filter: + enabled: true + stat-view-servlet: + enabled: true + url-pattern: /druid/* + login-username: ${DRUID_USERNAME:admin} + login-password: ${DRUID_PASSWORD:admin} + filter: + stat: + enabled: true + log-slow-sql: true + slow-sql-millis: 100 + merge-sql: true + wall: + config: + multi-statement-allow: true + dynamic: + druid: + initial-size: 5 + min-idle: 10 + max-active: 20 + max-wait: 60000 + time-between-eviction-runs-millis: 60000 + min-evictable-idle-time-millis: 600000 + max-evictable-idle-time-millis: 1800000 + validation-query: SELECT 1 FROM DUAL + test-while-idle: true + test-on-borrow: false + test-on-return: false + pool-prepared-statements: true + max-pool-prepared-statement-per-connection-size: 20 + primary: master + datasource: + master: + url: jdbc:mysql://${MYSQL_HOST:127.0.0.1}:${MYSQL_PORT:3306}/${MYSQL_DATABASE:aiot_platform}?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true&rewriteBatchedStatements=true + username: ${MYSQL_USER:root} + password: ${MYSQL_PASSWORD:} + slave: + lazy: true + url: jdbc:mysql://${MYSQL_SLAVE_HOST:${MYSQL_HOST:127.0.0.1}}:${MYSQL_SLAVE_PORT:${MYSQL_PORT:3306}}/${MYSQL_DATABASE:aiot_platform}?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true&rewriteBatchedStatements=true + username: ${MYSQL_SLAVE_USER:${MYSQL_USER:root}} + password: ${MYSQL_SLAVE_PASSWORD:${MYSQL_PASSWORD:}} + + data: + redis: + host: ${REDIS_HOST:127.0.0.1} + port: ${REDIS_PORT:6379} + database: ${REDIS_DATABASE:0} + password: ${REDIS_PASSWORD:} + timeout: 5000ms + lettuce: + pool: + max-active: 8 + max-wait: -1ms + max-idle: 8 + min-idle: 0 + +--- #################### MQ 消息队列相关配置 #################### + +rocketmq: + name-server: ${ROCKETMQ_NAMESRV_ADDR:127.0.0.1:9876} + +spring: + rabbitmq: + host: ${RABBITMQ_HOST:127.0.0.1} + port: ${RABBITMQ_PORT:5672} + username: ${RABBITMQ_USERNAME:guest} + password: ${RABBITMQ_PASSWORD:guest} + kafka: + bootstrap-servers: ${KAFKA_BOOTSTRAP_SERVERS:127.0.0.1:9092} + +--- #################### 定时任务相关配置 #################### +xxl: + job: + admin: + addresses: ${XXL_JOB_ADMIN_ADDRESSES:http://127.0.0.1:9090/xxl-job-admin} + +--- #################### 服务保障相关配置 #################### + +lock4j: + acquire-timeout: 3000 + expire: 30000 + +--- #################### 监控相关配置 #################### + +management: + endpoints: + web: + base-path: /actuator + exposure: + include: '*' + +spring: + boot: + admin: + client: + instance: + service-host-type: IP + username: ${SPRING_BOOT_ADMIN_USERNAME:admin} + password: ${SPRING_BOOT_ADMIN_PASSWORD:admin} + +logging: + level: + root: INFO + com.viewsh: ${LOG_LEVEL:INFO} + file: + name: ${LOG_FILE_PATH:/app/logs}/${spring.application.name}.log + +--- #################### 芋道相关配置 #################### + +viewsh: + demo: false + env: + tag: ${HOSTNAME:prod} + captcha: + enable: true + security: + mock-enable: false diff --git a/viewsh-module-iot/viewsh-module-iot-gateway/src/main/resources/application-prod.yaml b/viewsh-module-iot/viewsh-module-iot-gateway/src/main/resources/application-prod.yaml new file mode 100644 index 0000000..d972ac1 --- /dev/null +++ b/viewsh-module-iot/viewsh-module-iot-gateway/src/main/resources/application-prod.yaml @@ -0,0 +1,86 @@ +--- #################### 注册中心 + 配置中心相关配置 #################### + +spring: + cloud: + nacos: + server-addr: ${NACOS_SERVER_ADDR:127.0.0.1:8848} + username: ${NACOS_USERNAME:} + password: ${NACOS_PASSWORD:} + discovery: + namespace: ${NACOS_NAMESPACE:} + group: ${NACOS_GROUP:DEFAULT_GROUP} + metadata: + version: 1.0.0 + config: + namespace: ${NACOS_NAMESPACE:} + group: ${NACOS_GROUP:DEFAULT_GROUP} + +--- #################### Redis 配置 #################### +spring: + data: + redis: + host: ${REDIS_HOST:127.0.0.1} + port: ${REDIS_PORT:6379} + database: ${REDIS_DATABASE:0} + password: ${REDIS_PASSWORD:} + timeout: 5000ms + lettuce: + pool: + max-active: 8 + max-wait: -1ms + max-idle: 8 + min-idle: 0 + +--- #################### MQ 消息队列相关配置 #################### + +rocketmq: + name-server: ${ROCKETMQ_NAMESRV_ADDR:127.0.0.1:9876} + +spring: + rabbitmq: + host: ${RABBITMQ_HOST:127.0.0.1} + port: ${RABBITMQ_PORT:5672} + username: ${RABBITMQ_USERNAME:guest} + password: ${RABBITMQ_PASSWORD:guest} + kafka: + bootstrap-servers: ${KAFKA_BOOTSTRAP_SERVERS:127.0.0.1:9092} + +--- #################### 服务保障相关配置 #################### + +lock4j: + acquire-timeout: 3000 + expire: 30000 + +--- #################### 监控相关配置 #################### + +management: + endpoints: + web: + base-path: /actuator + exposure: + include: '*' + +spring: + boot: + admin: + client: + instance: + service-host-type: IP + username: ${SPRING_BOOT_ADMIN_USERNAME:admin} + password: ${SPRING_BOOT_ADMIN_PASSWORD:admin} + +logging: + level: + root: INFO + com.viewsh: ${LOG_LEVEL:INFO} + file: + name: ${LOG_FILE_PATH:/app/logs}/${spring.application.name}.log + +--- #################### 芋道相关配置 #################### + +viewsh: + demo: false + env: + tag: ${HOSTNAME:prod} + security: + mock-enable: false diff --git a/viewsh-module-iot/viewsh-module-iot-server/src/main/resources/application-prod.yaml b/viewsh-module-iot/viewsh-module-iot-server/src/main/resources/application-prod.yaml new file mode 100644 index 0000000..6b500a1 --- /dev/null +++ b/viewsh-module-iot/viewsh-module-iot-server/src/main/resources/application-prod.yaml @@ -0,0 +1,139 @@ +--- #################### 注册中心 + 配置中心相关配置 #################### + +spring: + cloud: + nacos: + server-addr: ${NACOS_SERVER_ADDR:127.0.0.1:8848} + username: ${NACOS_USERNAME:} + password: ${NACOS_PASSWORD:} + discovery: + namespace: ${NACOS_NAMESPACE:} + group: ${NACOS_GROUP:DEFAULT_GROUP} + metadata: + version: 1.0.0 + config: + namespace: ${NACOS_NAMESPACE:} + group: ${NACOS_GROUP:DEFAULT_GROUP} + +--- #################### 数据库相关配置 #################### +spring: + datasource: + druid: + web-stat-filter: + enabled: true + stat-view-servlet: + enabled: true + url-pattern: /druid/* + login-username: ${DRUID_USERNAME:admin} + login-password: ${DRUID_PASSWORD:admin} + filter: + stat: + enabled: true + log-slow-sql: true + slow-sql-millis: 100 + merge-sql: true + wall: + config: + multi-statement-allow: true + dynamic: + druid: + initial-size: 5 + min-idle: 10 + max-active: 20 + max-wait: 60000 + time-between-eviction-runs-millis: 60000 + min-evictable-idle-time-millis: 600000 + max-evictable-idle-time-millis: 1800000 + validation-query: SELECT 1 FROM DUAL + test-while-idle: true + test-on-borrow: false + test-on-return: false + pool-prepared-statements: true + max-pool-prepared-statement-per-connection-size: 20 + primary: master + datasource: + master: + url: jdbc:mysql://${MYSQL_HOST:127.0.0.1}:${MYSQL_PORT:3306}/${MYSQL_DATABASE:aiot_platform}?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true&rewriteBatchedStatements=true + username: ${MYSQL_USER:root} + password: ${MYSQL_PASSWORD:} + slave: + lazy: true + url: jdbc:mysql://${MYSQL_SLAVE_HOST:${MYSQL_HOST:127.0.0.1}}:${MYSQL_SLAVE_PORT:${MYSQL_PORT:3306}}/${MYSQL_DATABASE:aiot_platform}?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true&rewriteBatchedStatements=true + username: ${MYSQL_SLAVE_USER:${MYSQL_USER:root}} + password: ${MYSQL_SLAVE_PASSWORD:${MYSQL_PASSWORD:}} + + data: + redis: + host: ${REDIS_HOST:127.0.0.1} + port: ${REDIS_PORT:6379} + database: ${REDIS_DATABASE:0} + password: ${REDIS_PASSWORD:} + timeout: 5000ms + lettuce: + pool: + max-active: 8 + max-wait: -1ms + max-idle: 8 + min-idle: 0 + +--- #################### MQ 消息队列相关配置 #################### + +rocketmq: + name-server: ${ROCKETMQ_NAMESRV_ADDR:127.0.0.1:9876} + +spring: + rabbitmq: + host: ${RABBITMQ_HOST:127.0.0.1} + port: ${RABBITMQ_PORT:5672} + username: ${RABBITMQ_USERNAME:guest} + password: ${RABBITMQ_PASSWORD:guest} + kafka: + bootstrap-servers: ${KAFKA_BOOTSTRAP_SERVERS:127.0.0.1:9092} + +--- #################### 定时任务相关配置 #################### +xxl: + job: + admin: + addresses: ${XXL_JOB_ADMIN_ADDRESSES:http://127.0.0.1:9090/xxl-job-admin} + +--- #################### 服务保障相关配置 #################### + +lock4j: + acquire-timeout: 3000 + expire: 30000 + +--- #################### 监控相关配置 #################### + +management: + endpoints: + web: + base-path: /actuator + exposure: + include: '*' + +spring: + boot: + admin: + client: + instance: + service-host-type: IP + username: ${SPRING_BOOT_ADMIN_USERNAME:admin} + password: ${SPRING_BOOT_ADMIN_PASSWORD:admin} + +logging: + level: + root: INFO + com.viewsh: ${LOG_LEVEL:INFO} + file: + name: ${LOG_FILE_PATH:/app/logs}/${spring.application.name}.log + +--- #################### 芋道相关配置 #################### + +viewsh: + demo: false + env: + tag: ${HOSTNAME:prod} + captcha: + enable: true + security: + mock-enable: false diff --git a/viewsh-module-system/viewsh-module-system-server/src/main/resources/application-prod.yaml b/viewsh-module-system/viewsh-module-system-server/src/main/resources/application-prod.yaml new file mode 100644 index 0000000..c938cbc --- /dev/null +++ b/viewsh-module-system/viewsh-module-system-server/src/main/resources/application-prod.yaml @@ -0,0 +1,148 @@ +--- #################### 注册中心 + 配置中心相关配置 #################### + +spring: + cloud: + nacos: + server-addr: ${NACOS_SERVER_ADDR:127.0.0.1:8848} # Nacos 服务器地址,支持环境变量 + username: ${NACOS_USERNAME:} # Nacos 账号 + password: ${NACOS_PASSWORD:} # Nacos 密码 + discovery: # 【服务发现】配置项 + namespace: ${NACOS_NAMESPACE:} # 命名空间,生产环境 + group: ${NACOS_GROUP:DEFAULT_GROUP} # 使用的 Nacos 配置分组 + metadata: + version: 1.0.0 # 服务实例的版本号 + config: # 【配置中心】配置项 + namespace: ${NACOS_NAMESPACE:} # 命名空间,生产环境 + group: ${NACOS_GROUP:DEFAULT_GROUP} # 使用的 Nacos 配置分组 + +--- #################### 数据库相关配置 #################### +spring: + datasource: + druid: # Druid 【监控】相关的全局配置 + web-stat-filter: + enabled: true + stat-view-servlet: + enabled: true + allow: # 设置白名单,不填则允许所有访问 + url-pattern: /druid/* + login-username: ${DRUID_USERNAME:admin} + login-password: ${DRUID_PASSWORD:admin} + filter: + stat: + enabled: true + log-slow-sql: true # 慢 SQL 记录 + slow-sql-millis: 100 + merge-sql: true + wall: + config: + multi-statement-allow: true + dynamic: # 多数据源配置 + druid: # Druid 【连接池】相关的全局配置 + initial-size: 5 + min-idle: 10 + max-active: 20 + max-wait: 60000 + time-between-eviction-runs-millis: 60000 + min-evictable-idle-time-millis: 600000 + max-evictable-idle-time-millis: 1800000 + validation-query: SELECT 1 FROM DUAL + test-while-idle: true + test-on-borrow: false + test-on-return: false + pool-prepared-statements: true + max-pool-prepared-statement-per-connection-size: 20 + primary: master + datasource: + master: + url: jdbc:mysql://${MYSQL_HOST:127.0.0.1}:${MYSQL_PORT:3306}/${MYSQL_DATABASE:aiot_platform}?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true&rewriteBatchedStatements=true + username: ${MYSQL_USER:root} + password: ${MYSQL_PASSWORD:} + slave: # 从库配置(可选) + lazy: true + url: jdbc:mysql://${MYSQL_SLAVE_HOST:${MYSQL_HOST:127.0.0.1}}:${MYSQL_SLAVE_PORT:${MYSQL_PORT:3306}}/${MYSQL_DATABASE:aiot_platform}?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true&rewriteBatchedStatements=true + username: ${MYSQL_SLAVE_USER:${MYSQL_USER:root}} + password: ${MYSQL_SLAVE_PASSWORD:${MYSQL_PASSWORD:}} + + # Redis 配置 + data: + redis: + host: ${REDIS_HOST:127.0.0.1} + port: ${REDIS_PORT:6379} + database: ${REDIS_DATABASE:0} + password: ${REDIS_PASSWORD:} + timeout: 5000ms + lettuce: + pool: + max-active: 8 + max-wait: -1ms + max-idle: 8 + min-idle: 0 + +--- #################### MQ 消息队列相关配置 #################### + +# rocketmq 配置项 +rocketmq: + name-server: ${ROCKETMQ_NAMESRV_ADDR:127.0.0.1:9876} + +spring: + # RabbitMQ 配置项(可选) + rabbitmq: + host: ${RABBITMQ_HOST:127.0.0.1} + port: ${RABBITMQ_PORT:5672} + username: ${RABBITMQ_USERNAME:guest} + password: ${RABBITMQ_PASSWORD:guest} + # Kafka 配置项(可选) + kafka: + bootstrap-servers: ${KAFKA_BOOTSTRAP_SERVERS:127.0.0.1:9092} + +--- #################### 定时任务相关配置 #################### +xxl: + job: + admin: + addresses: ${XXL_JOB_ADMIN_ADDRESSES:http://127.0.0.1:9090/xxl-job-admin} + +--- #################### 服务保障相关配置 #################### + +# Lock4j 配置项 +lock4j: + acquire-timeout: 3000 + expire: 30000 + +--- #################### 监控相关配置 #################### + +# Actuator 监控端点的配置项 +management: + endpoints: + web: + base-path: /actuator + exposure: + include: '*' + +# Spring Boot Admin 配置项 +spring: + boot: + admin: + client: + instance: + service-host-type: IP + username: ${SPRING_BOOT_ADMIN_USERNAME:admin} + password: ${SPRING_BOOT_ADMIN_PASSWORD:admin} + +# 日志文件配置 +logging: + level: + root: INFO + com.viewsh: ${LOG_LEVEL:INFO} + file: + name: ${LOG_FILE_PATH:/app/logs}/${spring.application.name}.log + +--- #################### 芋道相关配置 #################### + +viewsh: + demo: false # 生产环境关闭演示模式 + env: + tag: ${HOSTNAME:prod} + captcha: + enable: true # 生产环境开启验证码 + security: + mock-enable: false # 生产环境关闭 mock