Spring Eureka未通过docker deploy在ec2上注册各种服务/zuul,但允许在本地计算机上注册服务
我看过其他几篇文章,但都没有用,我只是试图通过docker部署一个ec2实例,并向它注册各种服务/zuul。重要信息,我正在通过docker在单独的容器上运行services/eureka客户端。 是的,在使用docker部署后,我可以通过internet查看Eureka客户端页面,但它不显示任何实例。我将通过docker上的local via显示并排的日志比较,以及我的DockerFile。我的其他朋友在使用类似的application.yml和pom.xml配置/主应用程序类配置时没有任何问题 堆栈跟踪问题: 左侧:在EC2上注册ZUUL不工作 右侧:在本地主机上注册ZUUL工作正常 Eureka主应用程序类/application.ymlSpring Eureka未通过docker deploy在ec2上注册各种服务/zuul,但允许在本地计算机上注册服务,spring,spring-boot,docker,amazon-ec2,netflix-eureka,Spring,Spring Boot,Docker,Amazon Ec2,Netflix Eureka,我看过其他几篇文章,但都没有用,我只是试图通过docker部署一个ec2实例,并向它注册各种服务/zuul。重要信息,我正在通过docker在单独的容器上运行services/eureka客户端。 是的,在使用docker部署后,我可以通过internet查看Eureka客户端页面,但它不显示任何实例。我将通过docker上的local via显示并排的日志比较,以及我的DockerFile。我的其他朋友在使用类似的application.yml和pom.xml配置/主应用程序类配置时没有任何问
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;
@EnableEurekaServer
@SpringBootApplication
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.zuul.EnableZuulProxy;
@EnableZuulProxy
@SpringBootApplication
public class Application {
public static void main(String[] args) throws Exception {
SpringApplication.run(Application.class, args);
}
}
网关主/application.yml
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;
@EnableEurekaServer
@SpringBootApplication
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.zuul.EnableZuulProxy;
@EnableZuulProxy
@SpringBootApplication
public class Application {
public static void main(String[] args) throws Exception {
SpringApplication.run(Application.class, args);
}
}
这似乎是一个具有挑战性的领域,因为类似问题的大多数答案在整个堆栈溢出过程中都没有实现,所以我非常感谢您的尝试 根据您提供的片段和解释的场景,以下是我的假设
应用程序.yml
中指定discovery server URL。不是本地主机URL。您可以使用虚拟机的IP或域,也可以使用与访问eureka web控制台相同的地址
为了管理这两种环境,您可以使用spring概要文件或使用环境变量来设置这些特定于环境的属性
如果你真的不想看到你的请求离开你的机器,然后又回来,你可以考虑docker DNS。i、 e使用docker时,您可以使用友好的DNS而不是IP。为了实现这一点,请在同一docker网络中运行所有容器,然后您可以通过容器名称或主机名相互引用容器。根据您提供的代码片段和解释的场景,以下是我的假设
应用程序.yml
中指定discovery server URL。不是本地主机URL。您可以使用虚拟机的IP或域,也可以使用与访问eureka web控制台相同的地址
为了管理这两种环境,您可以使用spring概要文件或使用环境变量来设置这些特定于环境的属性
如果你真的不想看到你的请求离开你的机器,然后又回来,你可以考虑docker DNS。i、 e使用docker时,您可以使用友好的DNS而不是IP。为了实现这一点,请在同一docker网络中运行所有容器,然后可以通过容器名称或主机名相互引用容器