写点什么

Docker 下, 两分钟极速体验 Nacos

作者:程序员欣宸
  • 2022 年 10 月 03 日
    广东
  • 本文字数:1517 字

    阅读完需:约 5 分钟

Docker下,两分钟极速体验Nacos

欢迎访问我的 GitHub

这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos

关于 Nacos

  • Nacos 是构建以“服务”为中心的现代应用架构 (例如微服务范式、云原生范式) 的服务基础设施,可用于快速实现动态服务发现、服务配置、服务元数据及流量管理等,官方文档地址:https://nacos.io/zh-cn/docs/what-is-nacos.html

系列文章链接

  • 下面是《Spring Cloud Alibaba 实战系列》的所有文章地址:


  1. 《Docker下,两分钟极速体验Nacos》

  2. 《Docker下的Nacos环境开发》

  3. 《Docker下,两分钟极速体验Nacos配置中心》

  4. 《Docker下Nacos配置应用开发》

关于本文

  • 本文适合以下两类读者:


  1. 对于初学者来说,了解基本概念后,接下来应该动手实践一番;

  2. 您正在寻找一个快速搭建 Nacos 环境的方式,用于开发、学习等;


  • 为了节约您的时间,咱们立即开始吧;

本次体验功能简介

  • 本次实战的内容是体验 Nacos 的服务注册发现功能,简介如下:


  1. 名为 simple-provider 的应用注册到 Nacos server,这样的应用部署在六个 docker 容器上;

  2. 名为 simple-consumer 的应用对外提供一个 http 服务,通过浏览器访问此服务时,simple-consumer 会调用 simple-provider 的接口,将 simple-provider 返回的数据和此 simple-provider 的地址返回给浏览器;

  3. 由于 simple-provider 部署在六个 docker 容器上,因此每次通过浏览器发请求到 simple-consumer 时,simple-consumer 都会将请求发送到不同的 simple-provider 容器上,所以浏览器上展示的 simple-provider 地址每次都不一样;

  4. simple-consumer 是从 Nacos server 上取得六个 simple-provider 的地址的;

  5. simple-consumer 和 simple-provider 都注册到 Nacos server 上了,因此在 Nacos 的管理页面上可以看到它们的信息;


  • 本次实战的整体架构图如下,请顺着橙色提示框的数字顺序来看请整个流程:

环境

  • 本次实战的环境和版本信息如下,您需要准备好 docker 和 docker-compose:


  1. 操作系统:CentOS Linux release 7.6.1810

  2. Docker:1.13.1, build b2f74b2/1.13.1

  3. docker-compose:1.24.1, build 4667896

一个命令完成部署

  • 在 Linux 机器执行以下命令,即可搭建整个 Nacos 环境(Nacos server,服务提供者、服务消费者):


wget https://raw.githubusercontent.com/zq2599/blog_demos/master/nacosdemo/dockerfiles/simple/docker-compose.yml && \docker-compose up --scale provider=6 -d
复制代码


  • 镜像下载需要一些时间,请耐心等待,等容器全部创建成功就完成了环境搭建,可以开始体验了。

体验 Naocs

  • 假设 Linux 电脑的 IP 地址是 192.168.121.131,在浏览器输入:http://192.168.121.131:8848/nacos ,会显示 nacos 登录页面,如下图,输入账号 nacos ,密码也是 nacos


  • 如下图,登录后点击红框 1 中的 服务列表 菜单,从右侧的服务列表可见两个应用都已经注册到 nacos 上了,而且红框 2 显示 spring-provider 应用有 6 个实例:


  • 点击上图红框 3 中的 详情 ,如下图,列表会展示 simple-provide 应用的 6 个实例,每个实例的 IP 都是一个 docker 容器的 IP 地址:


  • 在浏览器输入地址:http://192.168.121.131:8080/test ,会向 simple-consumer 应用发起请求,此时 simple-consumer 会调用 simple-provider 提供的 web 服务,并将 simple-provider 的地址和返回内容拼接成一个字符串,然后返回到浏览器,如下图,可见本次提供服务的 simple-provider 实例是 172.18.0.9


  • 按下 F5 刷新浏览器,如下图,可见这次给 simple-consumer 提供服务的 simple-provider 是 172.18.0.3


  • 至此,Naocs 的注册发现功能体验完毕,您已经对 Naocs 有了初步的了解,如果您对整个环境的搭建感兴趣,或者想了解 simple-provider 和 simple-consumer 这两个应用的代码详情,请关注后续文章,我会对今天实战的内容做详细说明。

欢迎关注 InfoQ:程序员欣宸

学习路上,你不孤单,欣宸原创一路相伴...


发布于: 刚刚阅读数: 3
用户头像

搜索"程序员欣宸",一起畅游Java宇宙 2018.04.19 加入

前腾讯、前阿里员工,从事Java后台工作,对Docker和Kubernetes充满热爱,所有文章均为作者原创,个人Github:https://github.com/zq2599/blog_demos

评论

发布
暂无评论
Docker下,两分钟极速体验Nacos_Docker_程序员欣宸_InfoQ写作社区