Nacos 2.5 版本的使用
主要内容包括:
- 下载与安装
- 启用鉴权认证
- 使用
MySQL数据库 - 基本用法 - 配置服务器
- 基本用法 - 服务发现与注册
1. 下载与安装
1.1 下载
Nacos 在 GitHub 上托管, 可以直接下载安装, 也可以通过官网下载安装. 官网地址: https://nacos.io/


可以直接下载压缩包 (构建好的), 也可以下载源码自己编译.
wget https://github.com/alibaba/nacos/releases/download/2.5.1/nacos-server-2.5.1.tar.gz
tar xf nacos-server-2.5.1.tar.gz -C /usr/local/
1.2 安装
测试可以使用 Win, 但存在端口占用的奇怪问题 (实际上端口没有被占用, 但就是绑定失败, 通常重启就可以解决). 所以建议还是使用 Linux 安装, 可以使用虚拟机, 也可以使用 Docker.
1.2.1 二进制安装
二进制安装需要 Java 环境:
下载
Java包, 解压.Win: 配置环境变量
JAVA_HOME, 然后将%JAVA_HOME%\bin添加到PATH路径中.Linux: 官网提供了配置方法 (针对不同 shell), 下面是 bash 的写法:
export JAVA_HOME=jdk-install-dir export PATH=$JAVA_HOME/bin:$PATH也可以使用
apt等工具下载:apt update && apt -y install openjdk-8-jdk # 或者 apt install openjdk-11-jdk -y # 如果是 CentOS 可以使用 yum -y install java-1.8.0-openjdk-devel
安装 Nacos
- 解压.
- 单机启动 (
standalone).
解压后默认有几个目录:
bin目录, 程序所在目录.conf目录, 这里是配置文件,SQL脚本存放的位置.target目录, 存放着nacos程序.

linux 下解压可以使用:
tar xf nacos-server-2.5.1.tar.gz -C /usr/local/
默认情况下不用修改配置文件, 可以直接运行.
如果是 Windows, 进入 nacos 的 bin 目录后, 直接运行:
.\startup.cmd -m standalone
如果是 Linux, 进入 nacos 的 bin 目录后运行:
sh startup.sh -m standalone
# 如果是 ubuntu 系统则使用
bash startup.sh -m standalone # 因为在 ubuntu 中 sh 是 dash 的软连接
由于默认使用集群模式运行, 因此单机版运行需要带有参数 -m standalone.
另外, 由于命名, 不建议将
bin目录添加到PATH环境变量中.
如果看到: Nacos started successfully in stand alone mode. use embedded storage 则表示成功运行.
使用单机模式运行, 并默认使用嵌入式数据库.
在浏览器中访问 http://localhost:8848/nacos 即可打开 nacos 自带的管理控制台, 默认没有鉴权.

3.1.0 的版本默认会使用
8080端口, 并且也不需要携带/nacos路径.
1.2.2 Docker 安装
常规的安装方式有两种:
- 使用官方提供的
git仓库, 基于已经写好的docker-compose配置来创建. - 直接使用镜像创建.
官方提供的 git 仓库:
git clone https://github.com/nacos-group/nacos-docker.git

写好的参考脚本在 example 目录下. 公共的配置信息, 例如环境变量等在 env 目录下. 而如果需要深度自定义, 可以参考 build 目录下的 Dockerfile.
补充一下: 3.1.0 的版本必须设置
key等信息, 即使不开启鉴权, 否则启动会失败.
单机部署可以使用:
docker-compose -f example/standalone-derby.yaml up
如果是使用镜像运行可以使用脚本 (Win 环境, 主要区别是折行标识符)
docker run `
--name nacos-standalone-noauth `
-e MODE=standalone `
-e NACOS_AUTH_ENABLE=false `
-p 8848:8848 `
-d `
-p 9848:9848 `
acos/nacos-server:v2.5.1
如果需要鉴权, 考虑 Token 为 MTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIz
token是123456789012345678901234567890123的base64字符串.
docker run `
--name nacos-standalone-auth `
-e MODE=standalone `
-e NACOS_AUTH_ENABLE=true `
-e NACOS_AUTH_TOKEN=MTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIz `
-e NACOS_AUTH_IDENTITY_KEY=nacos `
-e NACOS_AUTH_IDENTITY_VALUE=nacos `
-p 8848:8848 `
-d `
-p 9848:9848 `
nacos/nacos-server:v2.5.1
必要时可以将配置文件作为外部的卷进行挂载, 省去了配置各个环境变量. 例如配置文件放在 C:/tools/nacos/conf 目录下时:
docker run `
--name nacos-standalone `
-e MODE=standalone `
-v C:/tools/nacos/conf:/home/nacos/conf `
-p 8848:8848 `
-p 9848:9848 `
-d `
nacos/nacos-server:v2.5.1
需要注意的是, 如果开启
MySQL, 配置文件中就不能使用127.0.0.1的连接字符串.
2. 启用鉴权认证
启用鉴权只需要修改配置文件即可. 配置文件默认在安装目录的 conf 子目录下.
需要修改的配置有:
- 设置 The default token. 并且必须是超过 32 为秘钥的
base64格式字符串. - 设置
identity的key与value. - 设置启用.
nacos.core.auth.enabled=true # 启用
nacos.core.auth.server.identity.key=nacos-key
nacos.core.auth.server.identity.value=nacos-value
# 原密码为: 123456789012345678901234567890123
nacos.core.auth.plugin.nacos.token.secret.key=MTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIz
然后再启用, 访问 http://localhost:8848/nacos, 会要求输入密码:
- 如果不填写密码, 直接提交, 系统会生成一个随机密码, 通过弹窗提示. 然后会要求重新登陆. 即可进入系统.
- 如果填写密码, 会弹框提示记住密码, 然后要求重新登陆, 即可进入管理系统.

3. 启用 MySQL 作为数据源
默认 nacos 使用内置的嵌入式数据库作为数据源. 如果有较高负荷要求, 以及需要使用集群的情况下, 建议使用 MySQL 作为外部数据源. 基本处理步骤:
- 安装 MySQL 数据库, 并创建用户, 以及数据库和表.
- 修改 nacos 配置, 启用数据库.
- 如果运行失败, 根据数据库版本下载 Java 驱动.
- 重新运行 nacos.
创建数据库用户
CREATE USER 'nacos'@'localhost' IDENTIFIED BY '123456'; # 设置密码为 123456
CREATE DATABASE nacos; # 创建数据库
GRANT ALL ON nacos.* TO 'nacos'@'localhost'; # 分配权限, 可操作 nacos 数据库的所有表
修改 nacos 配置
spring.sql.init.platform=mysql # 推荐使用
db.num=1
db.url.0=jdbc:mysql://127.0.0.1:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=Asia/Shanghai
db.user.0=nacos
db.password.0=123456
执行 sql 脚本, 创建数据库表:
- 在 nacos 安装目录下的 conf 文件夹下找到
mysql-schema.sql. - 打开数据库, 选择
nacos数据库, 执行该 sql 脚本.
由于 nacos 默认支持 MySQL, 只需要重新运行 nacos 即可.
补充
如果依旧连接数据库报错, 可以在 MySQL 官网下载 Connector/j, 然后将其放在 nacos 安装目录下的 plugins/mysql 目录下.
注意下载的版本需要与数据库版本一致. 官网描述 nacos 原生支持, 但在验证过程中出现过连接失败的情况. 但也不是每次都如此.

