Spring Boot,Docker,Discovery eureka

我有以下问题。

我有两个Springboot服务:服务A和服务发现尤里卡。

我有两个用例。

  1. 我想从本地开始
  2. 我想从aws ECS开始。

我把它们装在容器里 我用随机docker端口映射启动服务A: docker run -p 0: 8080 serviceA

之后,我有以下问题。

Docker服务向具有不正确端口的Docker发现服务注册。 服务A注册到Spring Boot Application 8080的端口,而不是docker端口。

如何告诉服务A注册docker的端口?

非常感谢你

尤里卡将尝试在boostrap.yml文件中定义的端口或8080中调用您的服务,如果没有定义。 因此,您将需要在Docker容器中打开数据相同的端口映射:

 docker run -p 8080:[the port used your application] 

请记住,阅读bootstrap文件是在启动时由Spring完成的第一件事情。

如果你想在本地运行,你可以定义一个configuration文件,在这个configuration文件中,Spring Cloud被禁用,端口使用是典型的(即由属性server.port定义)