各环境的区别

开发环境(dev):开发的时候用的环境

测试环境(test):日常测试或者是上线前测试。

预发布环境(灰度环境)(pre):发布前的最后调试,数据源与正式环境一致。

正式环境(prod):字面意思

配置

把项目跟目录的application.yml复制4个出来即可:

application-dev.yml

application-test.yml

application-pre.yml

application-prod.yml

主配置文件application.yml里面只需要简单配置几行即可(server.port这个设置端口号的,这里省略)。

spring:
  application:
    name: test-service#微服务ID
  profiles:
    active: dev #对应环境

其他的数据库链接、日志目录等等乱七八糟的就都丢到对应环境的配置文件即可

搭配配置中心(推荐)

建议搭配配置中心使用,方便后续管理。

搭配配置中心使用的话,配置就更简单了,主文件application.yml也还是只需要上面几条,而对应环境的,只需要把注册中心、配置中心的注册地址配置加上即可,剩下的配置都直接在配置中心动态配置。

#开发环境
spring:
  cloud:
    nacos:
      discovery:
        server-addr: 192.168.2.200:8848
      config:
        server-addr: 192.168.2.200:8848
        file-extension: yaml

运行

打包的时候直接打包就行了,不需要可以去修改application.yml里面的active字段,只需要在运行的命令行动态将active字段设置成你需要的环境即可

java -jar test-service.jar --spring.profiles.active=test 

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐