Nacos 是一个易于使用的动态服务发现、配置和服务管理平台。本指南将带你完成从环境准备到启动验证的全过程。
1. 环境准备
在安装 Nacos 之前,请确保你的系统满足以下条件:
- JDK: Nacos 是基于 Java 开发的,需要 JDK 8 或更高版本。
- 验证方法: 在终端输入
java -version,如果能看到版本信息且版本号 >= 1.8,则说明已安装。 - 安装建议: 如果未安装,请从 Oracle 官网或使用
apt-get/yum/brew等包管理器安装。
- 验证方法: 在终端输入
- Maven (可选): 如果你计划从源码编译 Nacos,则需要 Maven 3.2.x 或更高版本。
- 验证方法: 在终端输入
mvn -v。
- 验证方法: 在终端输入
- 硬件: 建议至少 2GB 内存,以保证 Nacos 运行流畅。
2. 下载 Nacos
你可以选择下载官方编译好的包,或者从源码编译。推荐直接下载编译好的包,更快捷方便。
方式一:下载编译好的包 (推荐)
- 访问 Nacos 的 GitHub Release 页面:
https://github.com/alibaba/nacos/releases
- 在最新的稳定版本(例如
2.3.2)中,找到并下载nacos-server-$version.zip(Windows) 或nacos-server-$version.tar.gz(Linux/Mac) 文件。
方式二:从源码编译
如果你需要修改源码或使用特定版本,可以选择此方式。
bash
# 克隆 Nacos 源码仓库
git clone https://github.com/alibaba/nacos.git
# 进入源码目录
cd nacos
# 切换到你想要安装的版本标签 (例如 2.3.2)
git checkout 2.3.2
# 使用 Maven 编译打包
mvn -Prelease-nacos -Dmaven.test.skip=true clean install -U
编译成功后,产物会在
nacos/distribution/target/ 目录下生成。3. 解压与目录结构
将下载好的压缩包解压到你想要安装的目录。
bash
# 以 Linux/Mac 为例,版本号请替换为你下载的版本
tar -zxvf nacos-server-2.3.2.tar.gz
# 进入 Nacos 主目录
cd nacos-server-2.3.2
解压后的目录结构如下:
bin/: 存放启动和停止 Nacos 的脚本。conf/: 存放 Nacos 的配置文件,如application.properties。data/: Nacos 运行时存储数据的目录(单机模式下存放嵌入式数据库数据)。logs/: Nacos 的日志文件目录。target/: 存放 Nacos 服务的 JAR 包。
4. 配置 Nacos (重要)
Nacos 的配置文件位于
conf/application.properties。对于单机模式,最关键的配置是选择数据源。默认情况下,Nacos 单机模式会使用一个嵌入式的 Derby 数据库。但这有一个严重问题:每次重启 Nacos,所有配置和服务注册信息都会丢失!
因此,强烈建议你将数据源配置为外部的 MySQL 数据库。
配置步骤:
-
安装并启动 MySQL: 请确保你有一个可用的 MySQL 5.6.5+ 或 8.0+ 环境。
-
创建数据库和表:
- 登录 MySQL。
- 创建一个数据库,例如
nacos_config。sqlCREATE DATABASE nacos_config CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; - 使用 Nacos 提供的初始化 SQL 脚本创建表。脚本位于
conf/nacos-mysql.sql。bash# 在终端中执行,或者在 MySQL 客户端中导入该文件 mysql -u root -p nacos_config < conf/nacos-mysql.sql
-
修改
application.properties文件:- 打开
conf/application.properties。 - 找到并取消注释(删除行首的
#)关于 MySQL 数据源的配置,并修改为你的 MySQL 信息。
properties# *************** Config Module Related Configurations *************** # ### If use MySQL as datasource: spring.datasource.platform=mysql ### Count of DB: db.num=1 ### Connect URL of DB: db.url.0=jdbc:mysql://127.0.0.1:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC db.user.0=your_mysql_username db.password.0=your_mysql_password # 如果是 MySQL 8.0+,可能需要指定驱动类 db.driver-class-name=com.mysql.cj.jdbc.Driver请务必将your_mysql_username和your_mysql_password替换为你的实际账号密码。 - 打开
5. 启动 Nacos
进入
bin 目录,根据你的操作系统执行相应的启动脚本。-
Linux / Mac:bash
# 进入 bin 目录 cd bin # 启动单机模式 sh startup.sh -m standalone -
Windows:bash
# 进入 bin 目录 cd bin # 启动单机模式 startup.cmd -m standalone
启动成功后,你会在控制台看到类似
Nacos started successfully in standalone mode. use external storage 的日志。6. 访问与验证
-
访问控制台:打开浏览器,访问
http://127.0.0.1:8848/nacos。- 默认端口: 8848 (这是珠穆朗玛峰的高度,Nacos 的寓意)。
- 默认账号密码: 都是
nacos。
-
登录验证:使用账号密码
nacos/nacos登录。- 如果能成功登录到控制台界面,说明 Nacos 服务端已成功运行。
- 你可以尝试发布一个配置或注册一个服务,然后重启 Nacos 服务。如果之前配置了 MySQL,重启后你发布的配置依然存在。
7. 停止 Nacos
-
Linux / Mac:bash
# 在 bin 目录下执行 sh shutdown.sh -
Windows:bash
# 在 bin 目录下执行 shutdown.cmd或者直接关闭启动 Nacos 的命令行窗口。
常见问题与进阶
- 端口冲突: 如果 8848 端口已被占用,可以在
conf/application.properties中修改server.port。 - 防火墙: 如果 Nacos 和你的应用不在同一台机器上,请确保服务器的防火墙已开放 8848 端口。
- 集群模式: 对于生产环境,为保证高可用,你需要部署 Nacos 集群。这通常涉及到配置集群配置文件 (
conf/cluster.conf)、使用负载均衡器(如 Nginx)以及更复杂的数据库配置。 - 安全: 在生产环境中,务必修改默认的
nacos账号密码,并配置鉴权策略。