Cloud 云部署中的Spring云微服务配置

Cloud 云部署中的Spring云微服务配置,cloud,spring-cloud,Cloud,Spring Cloud,我在本地系统中使用Eureka服务器和Zuul Spring云工具创建了一个示例Spring云微服务。它运行正常。我在eureka服务器项目中将我的微服务注册为客户端。还将我的Zuul注册为Eureka服务器上的客户端 以下是我的Eureka server项目application.properties server.port=8071 eureka: numberRegistrySyncRetries: 1 instance: hostname: localhost client: reg

我在本地系统中使用Eureka服务器和Zuul Spring云工具创建了一个示例Spring云微服务。它运行正常。我在eureka服务器项目中将我的微服务注册为客户端。还将我的Zuul注册为Eureka服务器上的客户端

以下是我的Eureka server项目application.properties

server.port=8071
eureka:  
numberRegistrySyncRetries: 1
instance:
hostname: localhost
client:
registerWithEureka: false
fetchRegistry: false
serviceUrl:
  defaultZone: http://localhost:8071/eureka/
server:
enable-self-preservation: true
下面的代码是我的microservice application.property文件内容

eureka.client.serviceUrl.defaultZone=http://localhost:8071/eureka/
eureka.client.register-with-eureka=true
eureka.client.fetch-registry=true
我的zuul application.properties代码是

eureka.client.serviceUrl.defaultZone=http://localhost:8071/eureka/
eureka.client.register-with-eureka=true
eureka.client.fetch-registry=true
spring.application.name=eurekaZuulClient
ribbon.eureka.enabled=true
zuul:
 routes:
  espace-service:
   path: /espace/**
   stripPrefix: true
   serviceId: espace-service
   server.port=8090
我的疑问是,当我们将此应用程序部署到云中时,我们需要在application.properties?中进行哪些更改,因为我们不知道云上的server.port和eureka.client.serviceUrl.defaultZone。这里我只使用localhost运行


那么,我们需要如何在配置中遵循云部署过程呢?我是Spring Cloud的初学者,在这些配置中我有很多困惑。

知道Eureka的端口很好,这样我们就可以轻松地检查各种API的状态。对于云部署,有多种方法可以处理此问题

您可以硬编码部署eureka的实例的IP,并用概要文件名将其分隔开

eureka:
  client:
    serviceUrl:
      defaultZone: http://localhost:8761/eureka/
---
eureka:
  client:
    serviceUrl:
      defaultZone: http://172.0.0.1:8761/eureka/
分隔符下的配置位用于应用程序在cloud Spring概要文件下运行时。使用SPRING\u PROFILES\u活动环境变量可以轻松设置概要文件。您可以在manifest.yml中配置Cloud Foundry环境变量,或者在Cloud Foundry Lattice上配置Docker文件

如果主机名不能由Java确定,则IP地址将发送到Eureka。设置主机名的唯一明确方法是使用eureka.instance.hostname。您可以在运行时使用环境变量设置主机名,例如eureka.instance.hostname=${HOST\u NAME}

eureka:
  instance:
    serviceUrl:
      defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/

Eureka需要部署到一个众所周知的主机:portOk。但是我如何设置默认区域?。我需要那个域和端口号。那么我将如何添加它们的域。还有,您提到的那个众所周知的端口的识别过程是什么?aws中的静态ip弹性ip