0101nacos本地编译运行-nacos-微服务架构

1 源码下载

github nacos地址,目前nacos最新版本2.2.0.1,做测试直接选最新版本就可以。下面介绍几个nacos常用版本,根据需要自行下载。

ncos版本描述适用
v2.2.0.1最新新特性测试学习
v2.1.12.x稳定版新项目生成环境
v1.4x1.x稳定版本旧项目生产环境

记得是下载源码,不是直接下载运行程序。如下图1-1所示:

在这里插入图片描述

2 编译排错

本人当前环境如下表2-1所示:

系统JDKMavenIDENacos
Windows 1064位 JDK1.83.9.0idea2022.3.2v2.2.0.1

直接idea打开解压后的文件夹,一眼就是一堆服务,不要慌。nacos学习一步一步来就好,现在我们只需要吧nacos启动,登录下后台,有个简单了解即可。

认知1:nacos是基于springboot的web服务。

我们来找下springboot及web相关依赖。

nacos-all下的pom.xml中找到springboot依赖

<spring-boot-dependencies.version>2.6.8</spring-boot-dependencies.version>

在我们要启动的服务nacos-console对应的依赖中,找到spring-web依赖,如下图2-1所示

在这里插入图片描述

既然是基于Springboot的web服务,我们找到nacos-console下的启动启动,以standalone模式即单机版启动,在Run Configuration里面配置下VM Option

-Dnacos.standalone=true

run 运行命令 加上,-Dmaven.test.skip=true

install -Dmaven.test.skip=true -f pom.xml
  • 报错1:找不到依赖的jar包
Caused by: java.lang.IllegalArgumentException: Could not find class [com.alibaba.nacos.api.annotation.NacosApi]

这个类在nacos-api中,看来nacos-console启动去需要其他jar包,那我们直接通过idea的Maven UI窗口把整个nacos-all clean install 一下。

在这里插入图片描述

install过程如下图2-2所示:

在这里插入图片描述

再次启动Nacos

  • 报错2:密钥不符合规则
Caused by: java.lang.IllegalArgumentException: the length of secret key must great than or equal 32 bytes; And the secret key  must be encoded by base64.Please see https://nacos.io/zh-cn/docs/v2/guide/user/auth.html

点击链接,跳转官方文档,参考修改nacos-console 下application.properties相应内容如下:

nacos.core.auth.plugin.nacos.token.secret.key=VGhpc0lzTXlDdXN0b21TZWNyZXRLZXkwMTIzNDU2Nzg=

这里只是做演示,没有自定义密钥,并进行base64加密

再次启动Nacos,出现nacos logo。控制台地址 Console: http://自己IP地址:8848/nacos/index.html,直接点击,浏览器进入nacos后台,默认用户名:nacos,密码:nacos,登录页面展示如下图2-3所示:

在这里插入图片描述

3 修改数据库

nacos默认使用的是内置Derby数据库(没有接触过),为了便于我们以后学习观察,我们把数据库配置为mysql。

第一步:mysql数据库中创建数据库,库名:nacos

第二步:找到nacos给我们提供的sql脚本,位置下图3-1所示:在这里插入图片描述

第三步:连接mysql,使用刚创建的nacos数据库,我这里用的navicat,执行上面的sql脚本。

mysql中生成如下图3-2所示表:在这里插入图片描述

第四步:修改nacos-console 配置文件application.properties如下配置,如果被注释,解开注释

spring.sql.init.platform=mysql
### Count of DB:
db.num=1

### Connect URL of DB:
db.url.0=jdbc:mysql://自己IP:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user=自己数据库用户名
db.password=自己数据库密码

在此启动nacos,控制台输出

2023-03-14 11:14:16.631  INFO 9360 --- [           main] c.a.n.c.l.StartingApplicationListener    : Nacos started successfully in stand alone mode. use external storage

说明我们配置mysql数据库生效。如果是没有配置外部数据库,控制台输出如下:

2023-03-14 11:18:07.540  INFO 4940 --- [           main] c.a.n.c.l.StartingApplicationListener    : Nacos started successfully in stand alone mode. use embedded storage
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

gaog2zh

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值