本文档是生产部署的核心操作手册,每次打包上线前必须阅读。 错误配置可能导致生产环境连接开发 Nacos 或使用开发签章,造成严重事故。
控制服务启动时连接哪台 Nacos 服务器。代码默认值为 127.0.0.1:8848(本机)。
| 环境 | NACOS_ADDR 值 | 是否需要手动设置 |
|---|---|---|
| 本地开发 | 127.0.0.1:8848(默认值) |
不需要 |
| 联合开发 | 192.168.8.4:8848 |
需要 |
| 生产部署 | 127.0.0.1:8848(默认值,Nacos 同机) |
不需要 |
方式 A:IDEA Run Configuration(推荐)
Services 面板 → 右键启动项 → Modify Run Configuration → Environment variables 填入:
NACOS_ADDR=192.168.8.4:8848
方式 B:Windows 系统环境变量(一劳永逸)
此电脑 → 右键属性 → 高级系统设置 → 环境变量 → 用户变量新建:
变量名:NACOS_ADDR
变量值:192.168.8.4:8848
设完后 IDEA 重启生效。切回本地开发时改为 127.0.0.1:8848。
方式 C:命令行启动 jar 时
set NACOS_ADDR=192.168.8.4:8848
java -jar xxx.jar
以下每一步都必须执行,缺一不可。
dev → 勾选 prod勾选 prod 时 dev 会自动失效,业务参数切换为 production。
也可命令行执行:
mvn clean install -Pprod
找到打好的 jar 文件,用压缩工具打开,检查以下文件:
BOOT-INF/classes/application-assess.yml → active: productionBOOT-INF/classes/application-finance.yml → active: productionBOOT-INF/classes/application-human.yml → active: production检查签章地址是否正确:
BOOT-INF/classes/application-assess-production.yml → signature_http_top: http://121.40.158.10:9182BOOT-INF/classes/application-finance-production.yml → signature_http_top: http://121.40.158.10:9182BOOT-INF/classes/application-human-production.yml → signature_http_top: http://121.40.158.10:9182如果 active 不是 production 或签章地址不是 121.40.158.10,说明打包时 profile 没切对,绝对不能部署!
prod → 勾选 dev这一步不做,下次本地开发或测试打包会打出生产包!
上线前逐项确认,全部打勾才能部署:
prod、取消 devmvn clean install -Pprod)active: productionhttp://121.40.158.10:9182dev、取消 prod| 错误操作 | 后果 | 严重度 |
|---|---|---|
| 打包时忘记勾 prod | 生产包带着开发签章地址(192.168.2.130),签章功能连到测试服务器 | 致命 |
| 打完包忘记勾回 dev | 下次本地开发打出生产包,本地测试读到生产配置 | 高 |
| 联合开发忘记设 NACOS_ADDR | 服务连本机 Nacos,拉不到联调配置,启动报错或读到错误配置 | 中 |
| 生产部署时误设 NACOS_ADDR=192.168.8.4 | 生产服务连到开发 Nacos,读到开发环境的数据库/Redis 配置 | 致命 |
本地开发:直接 Run,什么都不用管
联合开发:设 NACOS_ADDR=192.168.8.4:8848
生产打包:勾 prod → clean → install → 验证 → 勾回 dev