Nacos 安装部署指南 (单机模式)

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

你可以选择下载官方编译好的包,或者从源码编译。推荐直接下载编译好的包,更快捷方便。
 
方式一:下载编译好的包 (推荐)
  1. 访问 Nacos 的 GitHub Release 页面:
     
    https://github.com/alibaba/nacos/releases
  2. 在最新的稳定版本(例如 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 数据库。
 
配置步骤:
 
  1. 安装并启动 MySQL: 请确保你有一个可用的 MySQL 5.6.5+ 或 8.0+ 环境。
  2. 创建数据库和表:
    • 登录 MySQL。
    • 创建一个数据库,例如 nacos_config
      sql
       
      CREATE 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
      
       
       
  3. 修改 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. 访问与验证

  1. 访问控制台:
     
    打开浏览器,访问 http://127.0.0.1:8848/nacos
    • 默认端口: 8848 (这是珠穆朗玛峰的高度,Nacos 的寓意)。
    • 默认账号密码: 都是 nacos
  2. 登录验证:
     
    使用账号密码 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 账号密码,并配置鉴权策略。
相关新闻