From 5aceb6e8934a767d911bda541b1314938a0c9f5b Mon Sep 17 00:00:00 2001 From: b2894lxlx <517289602@qq.com> Date: Tue, 18 Aug 2026 14:57:42 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8Dnacos=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/launch/LauncherServiceImpl.java | 19 +++-- doc/nacos/blade-dev.yaml | 31 +++++++- doc/nacos/blade-prod.yaml | 31 +++++++- script/docker/app/deploy.sh | 2 +- script/docker/app/docker-compose.yml | 79 +++++++------------ 5 files changed, 99 insertions(+), 63 deletions(-) diff --git a/blade-common/src/main/java/org/springblade/common/launch/LauncherServiceImpl.java b/blade-common/src/main/java/org/springblade/common/launch/LauncherServiceImpl.java index f2a7568..2d73b5c 100644 --- a/blade-common/src/main/java/org/springblade/common/launch/LauncherServiceImpl.java +++ b/blade-common/src/main/java/org/springblade/common/launch/LauncherServiceImpl.java @@ -47,14 +47,21 @@ public class LauncherServiceImpl implements LauncherService { Properties props = System.getProperties(); if (BladeApplication.isNacosConfigEnabled()) { + String nacosUsername = LauncherConstant.nacosUsername(profile); + String nacosPassword = LauncherConstant.nacosPassword(profile); + String nacosAddr = LauncherConstant.nacosAddr(profile); + // nacos公共配置,spring.config.import在配置中心和注册中心初始化前读取 + PropsUtil.setProperty(props, "spring.cloud.nacos.username", nacosUsername); + PropsUtil.setProperty(props, "spring.cloud.nacos.password", nacosPassword); + PropsUtil.setProperty(props, "spring.cloud.nacos.server-addr", nacosAddr); // nacos注册中心配置 - PropsUtil.setProperty(props, "spring.cloud.nacos.discovery.username", LauncherConstant.nacosUsername(profile)); - PropsUtil.setProperty(props, "spring.cloud.nacos.discovery.password", LauncherConstant.nacosPassword(profile)); - PropsUtil.setProperty(props, "spring.cloud.nacos.discovery.server-addr", LauncherConstant.nacosAddr(profile)); + PropsUtil.setProperty(props, "spring.cloud.nacos.discovery.username", nacosUsername); + PropsUtil.setProperty(props, "spring.cloud.nacos.discovery.password", nacosPassword); + PropsUtil.setProperty(props, "spring.cloud.nacos.discovery.server-addr", nacosAddr); // nacos配置中心配置 - PropsUtil.setProperty(props, "spring.cloud.nacos.config.username", LauncherConstant.nacosUsername(profile)); - PropsUtil.setProperty(props, "spring.cloud.nacos.config.password", LauncherConstant.nacosPassword(profile)); - PropsUtil.setProperty(props, "spring.cloud.nacos.config.server-addr", LauncherConstant.nacosAddr(profile)); + PropsUtil.setProperty(props, "spring.cloud.nacos.config.username", nacosUsername); + PropsUtil.setProperty(props, "spring.cloud.nacos.config.password", nacosPassword); + PropsUtil.setProperty(props, "spring.cloud.nacos.config.server-addr", nacosAddr); } // sentinel配置 diff --git a/doc/nacos/blade-dev.yaml b/doc/nacos/blade-dev.yaml index 1fcdc23..977a9db 100644 --- a/doc/nacos/blade-dev.yaml +++ b/doc/nacos/blade-dev.yaml @@ -91,8 +91,35 @@ thirdParty: # 轨迹开放接口地址 baseUrl: http://127.0.0.1:8080 mk: - # MK开放接口地址 - baseUrl: http://127.0.0.1:8080 + # MK应用及接口配置,敏感值通过环境变量注入 + appKey: ${MK_APP_KEY:} + appSecret: ${MK_APP_SECRET:} + baseUrl: ${MK_BASE_URL:http://127.0.0.1:8080} + loginUrl: ${MK_LOGIN_URL:http://127.0.0.1:8080} + oauthAppId: ${MK_OAUTH_APP_ID:} + oauthAppSecret: ${MK_OAUTH_APP_SECRET:} + subjectPrefix: ${MK_SUBJECT_PREFIX:} + templateCodePrefix: ${MK_TEMPLATE_CODE_PREFIX:} + mkSsoLoginUrl: ${MK_SSO_LOGIN_URL:/data/sys-oauth/ssoLogin} + checkReferer: ${MK_CHECK_REFERER:true} + erpBaseUrls: ${MK_ERP_BASE_URLS:http://127.0.0.1:2888} + getTokenUrl: ${MK_GET_TOKEN_URL:/authapi/getToken} + processSubmitUrl: ${MK_PROCESS_SUBMIT_URL:/openapi/sys-lbpm/sysLbpmProcess/openSupport/submit} + processExecuteUrl: ${MK_PROCESS_EXECUTE_URL:/openapi/sys-lbpm/sysLbpmProcess/openSupport/execute} + processDeleteUrl: ${MK_PROCESS_DELETE_URL:/openapi/sys-lbpm/sysLbpmProcess/openSupport/delete} + getCurrentNodesUrl: ${MK_CURRENT_NODES_URL:/openapi/sys-lbpm/sysLbpmProcess/openSupport/getCurNodesInfo} + getNodeHandlersUrl: ${MK_NODE_HANDLERS_URL:/openapi/sys-lbpm/sysLbpmProcess/openSupport/getNodeHandlerInfos} + getManualNodeUrl: ${MK_MANUAL_NODE_URL:/openapi/sys-lbpm/sysLbpmTemplate/openSupport/getManualNode} + pushOrgDeptUrl: ${MK_PUSH_ORG_DEPT_URL:/openapi/sys-org/v2/push/orgDept} + pushPersonUrl: ${MK_PUSH_PERSON_URL:/openapi/sys-org/v2/push/person} + getOAuthCodeUrl: ${MK_OAUTH_CODE_URL:/openapi/sys-oauth/openOauth/getCode} + getOAuthTokenUrl: ${MK_OAUTH_TOKEN_URL:/openapi/sys-oauth/openOauth/getToken} + getOAuthUserInfoUrl: ${MK_OAUTH_USER_INFO_URL:/openapi/sys-oauth/openOauth/getUserInfo} + queryAuditNotesUrl: ${MK_QUERY_AUDIT_NOTES_URL:/openapi/sys-lbpm/lbpmAuditNote/openSupport/listNote} + querySenderListUrl: ${MK_QUERY_SENDER_LIST_URL:/openapi/sys-lbpm/sysLbpmProcessCard/openSupport/getSenderList} + downloadFileUrl: ${MK_DOWNLOAD_FILE_URL:/openapi/sys-attach/fileStream/download} + queryApprovalListUrl: ${MK_QUERY_APPROVAL_LIST_URL:/openapi/lbpm-approval/lbpmApproval/portal/list} + queryProcessListUrl: ${MK_QUERY_PROCESS_LIST_URL:/openapi/sys-lbpm/sysLbpmProcess/openSupport/list} #百度OCR配置,API Key和Secret Key请通过环境变量注入 baidu: diff --git a/doc/nacos/blade-prod.yaml b/doc/nacos/blade-prod.yaml index d8f6404..16c1b02 100644 --- a/doc/nacos/blade-prod.yaml +++ b/doc/nacos/blade-prod.yaml @@ -63,8 +63,35 @@ thirdParty: # 轨迹开放接口地址 baseUrl: http://127.0.0.1:8080 mk: - # MK开放接口地址 - baseUrl: http://127.0.0.1:8080 + # MK应用及接口配置,敏感值通过环境变量注入 + appKey: ${MK_APP_KEY:} + appSecret: ${MK_APP_SECRET:} + baseUrl: ${MK_BASE_URL:http://127.0.0.1:8080} + loginUrl: ${MK_LOGIN_URL:http://127.0.0.1:8080} + oauthAppId: ${MK_OAUTH_APP_ID:} + oauthAppSecret: ${MK_OAUTH_APP_SECRET:} + subjectPrefix: ${MK_SUBJECT_PREFIX:} + templateCodePrefix: ${MK_TEMPLATE_CODE_PREFIX:} + mkSsoLoginUrl: ${MK_SSO_LOGIN_URL:/data/sys-oauth/ssoLogin} + checkReferer: ${MK_CHECK_REFERER:true} + erpBaseUrls: ${MK_ERP_BASE_URLS:} + getTokenUrl: ${MK_GET_TOKEN_URL:/authapi/getToken} + processSubmitUrl: ${MK_PROCESS_SUBMIT_URL:/openapi/sys-lbpm/sysLbpmProcess/openSupport/submit} + processExecuteUrl: ${MK_PROCESS_EXECUTE_URL:/openapi/sys-lbpm/sysLbpmProcess/openSupport/execute} + processDeleteUrl: ${MK_PROCESS_DELETE_URL:/openapi/sys-lbpm/sysLbpmProcess/openSupport/delete} + getCurrentNodesUrl: ${MK_CURRENT_NODES_URL:/openapi/sys-lbpm/sysLbpmProcess/openSupport/getCurNodesInfo} + getNodeHandlersUrl: ${MK_NODE_HANDLERS_URL:/openapi/sys-lbpm/sysLbpmProcess/openSupport/getNodeHandlerInfos} + getManualNodeUrl: ${MK_MANUAL_NODE_URL:/openapi/sys-lbpm/sysLbpmTemplate/openSupport/getManualNode} + pushOrgDeptUrl: ${MK_PUSH_ORG_DEPT_URL:/openapi/sys-org/v2/push/orgDept} + pushPersonUrl: ${MK_PUSH_PERSON_URL:/openapi/sys-org/v2/push/person} + getOAuthCodeUrl: ${MK_OAUTH_CODE_URL:/openapi/sys-oauth/openOauth/getCode} + getOAuthTokenUrl: ${MK_OAUTH_TOKEN_URL:/openapi/sys-oauth/openOauth/getToken} + getOAuthUserInfoUrl: ${MK_OAUTH_USER_INFO_URL:/openapi/sys-oauth/openOauth/getUserInfo} + queryAuditNotesUrl: ${MK_QUERY_AUDIT_NOTES_URL:/openapi/sys-lbpm/lbpmAuditNote/openSupport/listNote} + querySenderListUrl: ${MK_QUERY_SENDER_LIST_URL:/openapi/sys-lbpm/sysLbpmProcessCard/openSupport/getSenderList} + downloadFileUrl: ${MK_DOWNLOAD_FILE_URL:/openapi/sys-attach/fileStream/download} + queryApprovalListUrl: ${MK_QUERY_APPROVAL_LIST_URL:/openapi/lbpm-approval/lbpmApproval/portal/list} + queryProcessListUrl: ${MK_QUERY_PROCESS_LIST_URL:/openapi/sys-lbpm/sysLbpmProcess/openSupport/list} #百度OCR配置,API Key和Secret Key请通过环境变量注入 baidu: diff --git a/script/docker/app/deploy.sh b/script/docker/app/deploy.sh index c671b57..0c8bf3b 100644 --- a/script/docker/app/deploy.sh +++ b/script/docker/app/deploy.sh @@ -90,7 +90,7 @@ mount(){ #启动基础模块 base(){ - docker-compose up -d nacos sentinel seata-server web-nginx blade-nginx blade-redis powerjob-server + docker-compose up -d sentinel seata-server web-nginx blade-nginx blade-redis powerjob-server } #启动监控模块 diff --git a/script/docker/app/docker-compose.yml b/script/docker/app/docker-compose.yml index a5e6c79..2f1cdb0 100644 --- a/script/docker/app/docker-compose.yml +++ b/script/docker/app/docker-compose.yml @@ -1,32 +1,22 @@ version: '3' + +x-blade-environment: &blade-environment + - TZ=Asia/Shanghai + - SPRING_PROFILES_ACTIVE=prod + - NACOS_PROD_HOST=${NACOS_PROD_HOST:?NACOS_PROD_HOST must be set} + - NACOS_PROD_USERNAME=${NACOS_PROD_USERNAME:-admin} + - NACOS_PROD_PASSWORD=${NACOS_PROD_PASSWORD:-nacosTMS} + - MK_OAUTH_APP_ID=${MK_OAUTH_APP_ID:-} + - MK_OAUTH_APP_SECRET=${MK_OAUTH_APP_SECRET:-} + - MK_SUBJECT_PREFIX=${MK_SUBJECT_PREFIX:-} + - MK_TEMPLATE_CODE_PREFIX=${MK_TEMPLATE_CODE_PREFIX:-} + services: #################################################################################################### ###=================================== 以下为中间件模块 =========================================### #################################################################################################### - nacos: - image: nacos/nacos-server:v3.1.2 - hostname: "nacos-standalone" - environment: - - NACOS_AUTH_ENABLE=true - - NACOS_AUTH_CACHE_ENABLE=true - - NACOS_AUTH_IDENTITY_KEY=nacos - - NACOS_AUTH_IDENTITY_VALUE=nacos - - NACOS_AUTH_TOKEN= # 请阅读官方文档了解规则后替换为自己的token:https://nacos.io/zh-cn/docs/v2/guide/user/auth.html - - MODE=standalone - - TZ=Asia/Shanghai - volumes: - - /docker/nacos/standalone-logs/:/home/nacos/logs - - /docker/nacos/conf/application.properties:/home/nacos/conf/application.properties - ports: - - 8848:8848 - - 9848:9848 - - 8080:8080 - networks: - blade_net: - ipv4_address: 172.30.0.48 - sentinel: image: bladex/sentinel-dashboard:1.8.6 hostname: "sentinel" @@ -118,8 +108,7 @@ services: blade-admin: image: "${REGISTER}/blade-admin:${TAG}" - environment: - - TZ=Asia/Shanghai + environment: *blade-environment ports: - 7002:7002 privileged: true @@ -130,8 +119,7 @@ services: blade-gateway1: image: "${REGISTER}/blade-gateway:${TAG}" - environment: - - TZ=Asia/Shanghai + environment: *blade-environment privileged: true restart: always networks: @@ -140,8 +128,7 @@ services: blade-gateway2: image: "${REGISTER}/blade-gateway:${TAG}" - environment: - - TZ=Asia/Shanghai + environment: *blade-environment privileged: true restart: always networks: @@ -150,8 +137,7 @@ services: blade-auth1: image: "${REGISTER}/blade-auth:${TAG}" - environment: - - TZ=Asia/Shanghai + environment: *blade-environment privileged: true restart: always networks: @@ -160,8 +146,7 @@ services: blade-auth2: image: "${REGISTER}/blade-auth:${TAG}" - environment: - - TZ=Asia/Shanghai + environment: *blade-environment privileged: true restart: always networks: @@ -170,8 +155,7 @@ services: blade-report: image: "${REGISTER}/blade-report:${TAG}" - environment: - - TZ=Asia/Shanghai + environment: *blade-environment privileged: true restart: always ports: @@ -182,8 +166,7 @@ services: blade-log: image: "${REGISTER}/blade-log:${TAG}" - environment: - - TZ=Asia/Shanghai + environment: *blade-environment privileged: true restart: always networks: @@ -191,8 +174,7 @@ services: blade-desk: image: "${REGISTER}/blade-desk:${TAG}" - environment: - - TZ=Asia/Shanghai + environment: *blade-environment privileged: true restart: always networks: @@ -200,8 +182,7 @@ services: blade-system: image: "${REGISTER}/blade-system:${TAG}" - environment: - - TZ=Asia/Shanghai + environment: *blade-environment privileged: true restart: always networks: @@ -209,8 +190,7 @@ services: blade-flow: image: "${REGISTER}/blade-flow:${TAG}" - environment: - - TZ=Asia/Shanghai + environment: *blade-environment privileged: true restart: always networks: @@ -218,8 +198,7 @@ services: blade-resource: image: "${REGISTER}/blade-resource:${TAG}" - environment: - - TZ=Asia/Shanghai + environment: *blade-environment privileged: true restart: always networks: @@ -227,8 +206,7 @@ services: blade-job: image: "${REGISTER}/blade-job:${TAG}" - environment: - - TZ=Asia/Shanghai + environment: *blade-environment privileged: true restart: always networks: @@ -236,8 +214,7 @@ services: blade-transport: image: "${REGISTER}/blade-transport:${TAG}" - environment: - - TZ=Asia/Shanghai + environment: *blade-environment privileged: true restart: always networks: @@ -245,8 +222,7 @@ services: blade-file: image: "${REGISTER}/blade-file:${TAG}" - environment: - - TZ=Asia/Shanghai + environment: *blade-environment privileged: true restart: always ports: @@ -256,8 +232,7 @@ services: blade-openapi: image: "${REGISTER}/blade-openapi:${TAG}" - environment: - - TZ=Asia/Shanghai + environment: *blade-environment privileged: true restart: always ports: