Docker 下的 Spring Cloud 三部曲之一:极速体验
欢迎访问我的 GitHub
这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos
关于《Docker 下的 Spring Cloud 三部曲》系列
从本章开始,我们一起在 Docker 下实战 Spring Cloud 的开发和部署,整个实战分为以下三章进行:
Docker 下极速体验注册中心、服务提供者、服务消费者;
细说 Spring Cloud 开发;
实战扩容;
本章是三部曲的第一篇,我们用最短的时间、最简单的操做一起在 Docker 下体验 SpringCloud 的注册中心、服务提供者、服务消费者;
实战环境
本次实战的网络机器信息如下图:
实战内容
这个实战环境提供以下服务:
eureka 是注册中心;
provider 启动后注册到 eureka;
consumer 启动后注册到 eureka;
浏览器访问 consumer 的 controller;
consumer 收到请求后,通过 eureka 取得 provider 的地址,然后发请求到 provider;
provider 返回一个字符串给 consumer,该字符串中有 provider 的 IP 地址;
consumer 把这个字符串返回给浏览器;
容器信息
环境中的 eureka、provider、consumer 都是 docker 容器,它们的名字和 IP 如下表所示:
软件信息
本次实战的环境信息如下:
操作系统:Ubuntu16;
Docker 版本:17.03.2-ce;
JDK:1.8.0_161;
docker-compose 配置
创建一个 docker-compose.yml 文件,内容如下:
启动容器
在 docker-compose.yml 所在目录下执行以下命令,启动所有容器:
启动时控制台显示以下信息:
执行命令 sudo docker logs -f springcloud_eureka_1 查看注册中心启动的情况,看到如下信息时表示注册中心启动成功:
执行命令 sudo docker logs -f springcloud_provider_1 查看服务提供者的启动情况,看到如下信息时表示服务提供者启动成功:
执行命令 sudo docker logs -f springcloud_consumer_1 查看服务消费者的启动情况,看到如下信息时表示服务消费者启动成功:
验证
访问 http://localhost:8081/可以查看注册中心的首页,如下图所示,红框中表示服务提供者和消费者都连上了注册中心:
访问 http://www.bolingcavalry.com:8083/user/aaa/bbb 可以调用到服务消费者 server 的网页,此时服务消费者会调用服务提供者的服务,服务提供者的响应是用户的名称和 id 信息,以及自己的 IP 地址,consumer 收到这些信息后,返回到网页,如下图:
至此,我们已在 Docker 下快速体验了 SpringCloud 的注册中心以及服务的提供和消费等功能,接下来的章节我们将这些功能背后的实现逐个展开;
欢迎关注 InfoQ:程序员欣宸
版权声明: 本文为 InfoQ 作者【程序员欣宸】的原创文章。
原文链接:【http://xie.infoq.cn/article/b1a7ba002f35bc0550479b4f2】。文章转载请联系作者。
评论