使用Docker在本地搭建调试高可用Eureka集群

本文介绍了如何在本地使用Docker搭建高可用的Eureka集群。在使用Docker部署时遇到节点间通信问题,通过docker-compose解决网络隔离,实现Eureka服务的分布式部署。首先,创建Eureka服务并绑定不同域名到Host,然后使用docker-compose配置容器间的通信,最终成功部署并验证Eureka集群的正常运行。
摘要由CSDN通过智能技术生成

写在前面的话

Hi,小伙伴们。继上期分享了如何用Docker部署自己的第一个SpringBoot应用之后,爱折腾的Storm还是耐不住性子,又折腾了一下SpringCloud应用的部署。在不使用Docker部署的时候呢,在本地模拟搭建一个高可用的Eureka集群是相当简单的。但是使用Docker部署的时候遇到了节点无法通信的问题,折腾半天终于完美解决这个问题,以此记录一下。

原因猜测

在项目中,我使用的是域名来区分不同的Eureka服务,本地Host绑定这些域名解析为127.0.0.1 但是部署到容易当中的时候就无法进行通信了,因此需要使用其他方法来建立通信。更改配置,使用ip并不是我的意图,虽然在实际生产环境是可以的,但是硬编码的风格显然不是最好的方案。

解决方案

经过资料的收集和整理,发现docker-compose能够解决这个问题,它能够自定义编排要发布的容易,包括容器依赖和通信并且统一部署。因此我在此使用它来解决上述的部署问题。

准备工作

首先我们需要构建Eureka服务,使用不同的端口,具体源码见我的开源项目

  • SpringBoot-Cloud-Learning:
    分别绑定配置文件中的三个域名到host,解析到127.0.0.1
    尝试直接启动这单个SpringBoot应用,是可以直接发布成分布式高可用Eureka集群的。
    进入http://eureka-server-01:1001/eureka/可以看到相应的监控界面
    接下来我们用
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值