|
| 1 | +--- |
| 2 | +layout: post |
| 3 | +title: "从零开始微服务(三)nacos注册中心搭建" |
| 4 | +date: 2021-10-13 09:38:33 +0800 |
| 5 | +tags: |
| 6 | +description: |
| 7 | +--- |
| 8 | + |
| 9 | +从应用创建可以看出,与spring boot毫无区别嘛,这算什么微服务,从这里开始,就慢慢开始不一样了,有服务了,就需要用注册中心,在第一篇文章中,决定使用nacos,这篇就介绍一下nacos的使用。 |
| 10 | + |
| 11 | +### nacos配置和启动 |
| 12 | + |
| 13 | +[官方文档][nacos-url]中,提供了几种启动方式,我们使用最简单的方式,docker启动,先按照文档的说明来,后期再根据实际需求,编写自己的docker-compose文件,根据官方文档中给出的docker-compose,我选择了单机模式+mysql5.7的启动方式。启动之前先简单的看一眼docker-compose文件 |
| 14 | + |
| 15 | + |
| 16 | +可以看出,绑定了nacos启动的端口,映射了日志和配置,关联了mysql容器,还初始化了一个环境变量文件。再来看这个环境变量的内容 |
| 17 | + |
| 18 | +> PREFER_HOST_MODE=hostname |
| 19 | +> MODE=standalone |
| 20 | +> SPRING_DATASOURCE_PLATFORM=mysql |
| 21 | +> MYSQL_SERVICE_HOST=mysql |
| 22 | +> MYSQL_SERVICE_DB_NAME=nacos_devtest |
| 23 | +> MYSQL_SERVICE_PORT=3306 |
| 24 | +> MYSQL_SERVICE_USER=nacos |
| 25 | +> MYSQL_SERVICE_PASSWORD=nacos |
| 26 | +> MYSQL_SERVICE_DB_PARAM=characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useSSL=false |
| 27 | +
|
| 28 | +从左边的键名可以看出来,基本是对启动方式(单机还是集群)、数据保存方式、数据库配置的初始化,知道了这个后期对于我们自定义docker-compose也很有帮助。 |
| 29 | + |
| 30 | +接下来就是启动了,运行下面命令,启动nacos和mysql |
| 31 | +{% highlight cmd %} |
| 32 | +docker-compose -f standalone-mysql-5.7.yaml up |
| 33 | +{% endhighlight %} |
| 34 | + |
| 35 | +启动完成后,先看一下数据库中的表结构。从名称中可以看出基本包含了配置中心、用户、角色、权限、修改记录等表。 |
| 36 | + |
| 37 | + |
| 38 | +接下来就可以在浏览器中访问nacos了,因为公司的系统原因,我用的是旧版的 docker toolbox,docker是安装在虚拟机中,所以地址是对应的局域网IP,在浏览器中访问 |
| 39 | +> http://192.168.99.100:8848/nacos |
| 40 | +会进入到以下界面,输入用户名密码进入到控制台页面(用户名密码都是nacos) |
| 41 | + |
| 42 | + |
| 43 | +进入后,发现配置列表中是空的,因为我们还没有将应用接入到nacos中,接下来就是对应用和nacos之间进行连通 |
| 44 | + |
| 45 | + |
| 46 | + |
| 47 | +### 配置注册中心 |
| 48 | + |
| 49 | +在应用中配置注册中心时,在**boostrap.yml**配置文件中进行配置,因为该配置文件用于更加早期的配置信息读取。 |
| 50 | +{% highlight yaml %} |
| 51 | +spring: |
| 52 | + application: |
| 53 | + name: consumer1 |
| 54 | + cloud: |
| 55 | + nacos: |
| 56 | + discovery: |
| 57 | + group: alibaba |
| 58 | + server-addr: http://192.168.99.100:8848 |
| 59 | +{% endhighlight %} |
| 60 | +group分组可以不配置,如果不配置则使用默认分组,server-addr是nacos的链接地址。配置完成后,重新启动应用,就可以在nacos中看到我们的应用了。 |
| 61 | + |
| 62 | + |
| 63 | +至此,nacos注册中心的启动和配置已经完成了。但是现在我们的两个应用还都是使用各自的地址来进行访问的,根本没有从一个入口进入,下一篇就介绍微服务的入口应用:**网关** |
| 64 | + |
| 65 | + |
| 66 | + |
| 67 | +[nacos-url]: https://nacos.io/zh-cn/docs/what-is-nacos.html |
0 commit comments