Spring Cloud Config 如何只使用本地目录? - V2EX
zealinux
V2EX    Java

Spring Cloud Config 如何只使用本地目录?

  •  
  •   zealinux Jun 13, 2020 2808 views
    This topic created in 2158 days ago, the information mentioned may be changed or developed.

    我搜索了一下,是使用环境配置成 native 。

    Config 服务的配置文件:

    spring: profiles: active: native spring: cloud: config: server: native: search-locations: file:///${user.home}/config-repo 

    config-repo 的目录结构:

    ProjectA/ datasource/ ProjectA-prd.yml ProjectB/ datasource/ ProjectB-prd.yml 

    然后我发现浏览起来获取不到配置

    http://<config 服务 IP:Port>/ProjectA/prd

    如果改成:

    search-locations: file:///${user.home}/config-repo/**

    还是不行。 不知道改怎么搞才对?

    是不是 native 不支持通配符?


    我的需求是,不依赖 git,只用本地目录来放所有微服务的配置文件。

    如果依赖 git,岂不是部署给别人用的时候,还得再部署一套 git 服务??

    11 replies    2020-06-15 13:22:00 +08:00
    hangszhang
        1
    hangszhang  
       Jun 13, 2020
    配置中心只把数据存本地, 你还用配置中心干嘛?直接写死在配置文件里面不就行了
    lzk50136
        2
    lzk5016  
       Jun 13, 2020 via Android
    用 nacos
    zealinux
        3
    zealinux  
    OP
       Jun 13, 2020
    @hangszhang

    另外前几天发生过这样的事情,

    (付费的)第三方的远程代码 git 托管的服务崩了,
    导致 配置中心 挂了。
    (远程访问不到,居然还能把本地好的给充掉,也是醉了)
    然后整个 spring cloud 挂了。
    yukiloh
        4
    yukiloh  
       Jun 13, 2020 via Android
    话说配置中心可不可以写多个备选…我还真的没试过
    hantsy
        5
    hantsy  
       Jun 13, 2020
    相对来讲,除了一些云服务特有的 ENV,还有加密配置外,K8s 的 ConfigMap 不错。Git 这种 Config Server 实际应用中鸡肋。
    hantsy
        6
    hantsy  
       Jun 13, 2020
    要用也可以选择基于 etcd,consul 的服务,其它的就算了吧。Configserver 这个一直没兴趣,我推荐的是用系统环境变量,aws 还支持 Vault 类似的加密配置。
    jorneyr
        7
    jorneyr  
       Jun 13, 2020
    # 配置的是目录
    spring.cloud.config.server.native.search-locatiOns= classpath:/shared

    可以参考这个 https://qtdebug.com/html/spring-boot/spring-cloud/Config.html
    k9990009
        8
    k9990009  
       Jun 14, 2020 via Android
    我记得 prd,native 一块写的,逗号隔开
    cuichaoyang
        9
    cuichaoyang  
       Jun 14, 2020 via iPhone
    启动参数 profiles=dev,native
    zealinux
        10
    zealinux  
    OP
       Jun 14, 2020
    @jorneyr
    使用到了 classpath,也就是要配置文件打包到 jar 里面咯?

    如果配置文件后期要改动,岂不是每次都要重新打包一下 jar ?
    ipeony
        11
    ipeony  
       Jun 15, 2020
    我觉得你的需求不是不依赖 git,只是不依赖 git 远程服务
    直接配置 spring.cloud.config.server.git.uri 指向本地的 git 仓库目录( eg. file:///Users/devUser/Projects/Work/demo-repo ),既可以满足 native 的需求,还能做版本管理
    About     Help     Advertise     Blog     API     FAQ     Solana     1182 Online   Highest 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 45ms UTC 23:17 PVG 07:17 LAX 16:17 JFK 19:17
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86