这是我要实现的目标,但遇到Zuul转发错误。
祖尔 GitHub
UserRegistration微服务-将调用另一个微服务。此外,它还有其他一些API。 GitHub Link
UserRegistration微服务上方的UserSearchDelete :将调用此服务。 GitHub Link
Eureka服务器: GitHub Link
如果我在localhost的Springboot STS中运行服务,那么eveything可以正常工作。 但是,如果我将所有服务都对接并运行不同的容器,那么我会遇到Zuul转发错误。
在Github存储库中引用application.yml文件。所有服务都已在Eureka注册。
可以帮忙吗?是错误还是我做错了什么?
GitHub问题参考:https://github.com/spring-cloud/spring-cloud-netflix/issues/3408
出现以下错误:
"cause": {
"cause": null,
"stackTrace": [
{....
"nStatusCode": 500,
"errorCause": "GENERAL",
"message": "Forwarding error",
"localizedMessage": "Forwarding error",
"suppressed": []
}```
答案 0 :(得分:0)
验证您的Zuul路径设置正确。
如果在Docker网络上运行,则必须使用run命令中的--net myCommonNet
标签将每个docker部署连接到相同的docker网络。请注意,您必须首先创建此网络。然后,您可以引用容器主机的名称。
如果您使用kubernetes作为部署环境,则可以使用服务名称访问不同的微服务。然后,将Zuul的properties.yml配置为:
zuul:
routes:
myService:
path: /myService/**
url: http://myService.default.svc.cluster.local:8086