使用 consul 启动 jHipster 微服务时出错
Error starting jHipster Microservices with consul
我正在尝试使用此 tutorial 构建示例微服务应用程序。
Jhipster版本是4.0.6
所以我创建了网关、服务并使用此命令启动了领事:
docker-compose -f src/main/docker/consul.yml up
来自我的网关目录。
但是错误发生在 Spring 启动时,这里是日志:
2017-02-22 11:52:25.679 ERROR 3168 --- [ restartedMain] o.s.c.c.c.ConsulPropertySourceLocator : Fail fast is set and there was an error reading configuration from consul.
2017-02-22 11:52:32.491 WARN 3168 --- [ restartedMain] o.s.boot.SpringApplication : Error handling failed (ApplicationEventMulticaster not initialized - call 'refresh' before multicasting events via the context: org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@2a5b2096: startup date [Thu Jan 01 03:00:00 AST 1970]; parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@5108df79)
com.ecwid.consul.transport.TransportException: java.net.ConnectException: Connection refused: connect
你能帮忙解决这个问题吗?
更新:
我发现该应用试图在 staptup:
上向 URL 发出 GET 请求
http://localhost:8500/v1/kv/config/armory,dev/?recurse&token=
但是 Consul K/V 存储中唯一存储的数据是:
KEY: config/application/data
VALUE:
configserver:
name: Docker Consul Service
status: Connected to Consul Server running in Docker
jhipster:
security:
authentication:
jwt:
secret: my-secret-token-to-change-in-production
你必须将你的应用程序 yaml 配置复制到你的 consul 实例 as explained in the doc 到 central-server-config
目录,如果 consul 在开发配置文件中 运行 或者在它的 git repo 中,如果 consul在产品资料中 运行。
因此,假设您的应用名为 "armory",您应该将 src/main/resources/config/application.yml
复制到 armory.yml
并针对每个配置文件(例如 application-dev.yml
到 armory-dev.yml
)
我正在尝试使用此 tutorial 构建示例微服务应用程序。 Jhipster版本是4.0.6 所以我创建了网关、服务并使用此命令启动了领事:
docker-compose -f src/main/docker/consul.yml up
来自我的网关目录。 但是错误发生在 Spring 启动时,这里是日志:
2017-02-22 11:52:25.679 ERROR 3168 --- [ restartedMain] o.s.c.c.c.ConsulPropertySourceLocator : Fail fast is set and there was an error reading configuration from consul.
2017-02-22 11:52:32.491 WARN 3168 --- [ restartedMain] o.s.boot.SpringApplication : Error handling failed (ApplicationEventMulticaster not initialized - call 'refresh' before multicasting events via the context: org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@2a5b2096: startup date [Thu Jan 01 03:00:00 AST 1970]; parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@5108df79)
com.ecwid.consul.transport.TransportException: java.net.ConnectException: Connection refused: connect
你能帮忙解决这个问题吗?
更新: 我发现该应用试图在 staptup:
上向 URL 发出 GET 请求http://localhost:8500/v1/kv/config/armory,dev/?recurse&token=
但是 Consul K/V 存储中唯一存储的数据是:
KEY: config/application/data
VALUE:
configserver:
name: Docker Consul Service
status: Connected to Consul Server running in Docker
jhipster:
security:
authentication:
jwt:
secret: my-secret-token-to-change-in-production
你必须将你的应用程序 yaml 配置复制到你的 consul 实例 as explained in the doc 到 central-server-config
目录,如果 consul 在开发配置文件中 运行 或者在它的 git repo 中,如果 consul在产品资料中 运行。
因此,假设您的应用名为 "armory",您应该将 src/main/resources/config/application.yml
复制到 armory.yml
并针对每个配置文件(例如 application-dev.yml
到 armory-dev.yml
)