首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何通过Docker Compose中的env vars设置Spring Cloud Server for Jhipster的Git URI?

如何通过Docker Compose中的env vars设置Spring Cloud Server for Jhipster的Git URI?
EN

Stack Overflow用户
提问于 2018-08-17 04:18:47
回答 1查看 1.1K关注 0票数 2

Jhipster Registry page上,提到我们可以通过以下参数为Spring Cloud Config设置Git存储库。

代码语言:javascript
复制
--spring.profiles.active=prod --spring.security.user.password=admin --jhipster.security.authentication.jwt.secret=secret-key --spring.cloud.config.server.composite=https://github.com/jhipster/jhipster-registry-sample-config --spring.cloud.config.server.composite[0].type=git --spring.cloud.config.server.composite[0].uri=https://github.com/jhipster/jhipster-registry-sample-config

但是我想通过我的docker-compose中的环境变量来设置这些参数,我如何才能做到这一点?尤其是这个:带有方括号的spring.cloud.config.server.composite.uri。

更新

我尝试了Gaël Marziou答案中定义的拼写,但它不起作用。下面是我正在使用的docker jhipster registry.yml,它是由jhipster docker-compose子生成器生成的,我在其中添加了Spring Cloud Config

代码语言:javascript
复制
version: '2'
services:
    jhipster-registry:
        image: jhipster/jhipster-registry
        environment:
        - SPRING_PROFILES_ACTIVE=prod,git
        - SPRING_SECURITY_USER_PASSWORD=admin
        - JHIPSTER_REGISTRY_PASSWORD=admin
        - JHIPSTER_LOGGING_LOGSTASH_ENABLED=true
        - JHIPSTER_LOGGING_LOGSTASH_HOST=jhipster-logstash
        - JHIPSTER_METRICS_LOGS_ENABLED=true
        - JHIPSTER_METRICS_LOGS_REPORTFREQUENCY=60
        - SPRING_CLOUD_CONFIG_SERVER_COMPOSITE=https://github.com/anthonyrichir/demo-feign-config
        - SPRING_CLOUD_CONFIG_SERVER_COMPOSITE_0_TYPE=git
        - SPRING_CLOUD_CONFIG_SERVER_COMPOSITE_0_URI=https://github.com/anthonyrichir/demo-feign-config
        ports:
        - 8761:8761

使用此配置,注册表将显示:

代码语言:javascript
复制
Failed to bind properties under 'spring.cloud.config.server.composite' to java.util.List<java.util.Map<java.lang.String, java.lang.Object>>:

    Reason: No converter found capable of converting from type [java.lang.String] to type [java.util.List<java.util.Map<java.lang.String, java.lang.Object>>]

我也尝试了这个配置:

代码语言:javascript
复制
version: '2'
services:
    jhipster-registry:
        image: jhipster/jhipster-registry
        environment:
        - SPRING_PROFILES_ACTIVE=prod,git
        - SPRING_SECURITY_USER_PASSWORD=admin
        - JHIPSTER_REGISTRY_PASSWORD=admin
        - JHIPSTER_LOGGING_LOGSTASH_ENABLED=true
        - JHIPSTER_LOGGING_LOGSTASH_HOST=jhipster-logstash
        - JHIPSTER_METRICS_LOGS_ENABLED=true
        - JHIPSTER_METRICS_LOGS_REPORTFREQUENCY=60
        - SPRING_CLOUD_CONFIG_SERVER_COMPOSITE_0_TYPE=git
        - SPRING_CLOUD_CONFIG_SERVER_COMPOSITE_0_URI=https://github.com/anthonyrichir/demo-feign-config
        ports:
        - 8761:8761

我得到了这个错误:

代码语言:javascript
复制
Caused by: java.lang.IllegalStateException: You need to configure a uri for the git repository
    at org.springframework.util.Assert.state(Assert.java:73)
    at org.springframework.cloud.config.server.environment.JGitEnvironmentRepository.afterPropertiesSet(JGitEnvironmentRepository.java:245)
    at org.springframework.cloud.config.server.environment.MultipleJGitEnvironmentRepository.afterPropertiesSet(MultipleJGitEnvironmentRepository.java:69)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1767)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1704)
    ... 88 common frames omitted
EN

回答 1

Stack Overflow用户

发布于 2018-08-17 05:02:30

spring.cloud.config.server.composite[0].uri属性应映射到SPRING_CLOUD_CONFIG_SERVER_COMPOSITE_0_URI环境变量。

请参阅https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config.html#boot-features-external-config-relaxed-binding

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51884749

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档