一、前言

在 Spring Cloud 微服务项目中,Nacos 经常用来做服务注册中心和配置中心。

本篇主要记录两种常见安装方式:

  • 在 Linux 虚拟机中通过 Docker 安装 Nacos;
  • 在 Windows 本机中下载压缩包启动 Nacos。

如果是跟着 Spring Cloud Alibaba 教程学习,建议优先使用 Nacos 2.x 版本,兼容性更稳。


二、Nacos 简单原理

Nacos 主要有两个常用功能:

服务注册与发现
配置中心

服务注册与发现:

微服务启动后,把自己的服务名、IP、端口注册到 Nacos。
其他服务需要调用它时,可以先去 Nacos 查询服务地址。

配置中心:

把一些配置放到 Nacos 中统一管理。
项目启动或运行时,可以从 Nacos 读取配置。

比如订单服务启动后,会把自己注册到 Nacos:

spzx-cloud-order -> 172.16.10.23:10200

用户服务调用订单服务时,就可以通过 Nacos 找到订单服务的地址。


三、Nacos 版本简单对比

版本特点适合场景
Nacos 1.x老版本,功能相对基础老项目维护
Nacos 2.x教程常用版本,兼容 Spring Cloud Alibaba 较稳学习微服务、普通项目开发
Nacos 3.x新版本,控制台端口有变化体验新功能、新项目尝试

简单建议:

跟教程学习:推荐 Nacos 2.5.x
想体验最新版:可以使用 Nacos 3.x

需要注意的是,Nacos 3.x 的控制台访问方式和 2.x 不一样。


四、Linux 虚拟机 Docker 配置 Nacos

1. 查看旧容器

先查看当前 Docker 中是否已经有 Nacos:

docker ps -a

如果有旧的 Nacos 容器,例如容器名叫 nacos,可以先停止并删除:

docker stop nacos
docker rm nacos

如果还想删除旧镜像:

docker rmi nacos/nacos-server:v2.1.1

2. 下载 Nacos 镜像

推荐学习阶段使用 Nacos 2.5.2:

docker pull nacos/nacos-server:v2.5.2

如果想使用 Nacos 3.x 最新版本,可以下载:

docker pull nacos/nacos-server:v3.2.2

3. 启动 Nacos 2.x

如果使用 Nacos 2.5.2,可以执行:

docker run -d \
  --name nacos \
  --restart=always \
  -e MODE=standalone \
  -e NACOS_AUTH_IDENTITY_KEY=nacos \
  -e NACOS_AUTH_IDENTITY_VALUE=nacos \
  -e NACOS_AUTH_TOKEN=abcdefghijklmnopqrstuvwxyz0123456789abcdefghijklmnopqrstuvwxyz0123456789 \
  -p 8848:8848 \
  -p 9848:9848 \
  -p 9849:9849 \
  nacos/nacos-server:v2.5.2

访问地址:

http://虚拟机IP:8848/nacos

例如:

http://172.16.10.23:8848/nacos

4. 启动 Nacos 3.x

如果使用 Nacos 3.2.2,需要额外映射 8080 端口:

docker run -d \
  --name nacos \
  --restart=always \
  -e MODE=standalone \
  -e NACOS_AUTH_IDENTITY_KEY=nacos \
  -e NACOS_AUTH_IDENTITY_VALUE=nacos \
  -e NACOS_AUTH_TOKEN=abcdefghijklmnopqrstuvwxyz0123456789abcdefghijklmnopqrstuvwxyz0123456789 \
  -p 8080:8080 \
  -p 8848:8848 \
  -p 9848:9848 \
  -p 9849:9849 \
  nacos/nacos-server:v3.2.2

访问地址:

http://虚拟机IP:8080/

例如:

http://172.16.10.23:8080/

5. 查看启动状态

启动后查看容器:

docker ps

如果看到 nacos 容器状态为 Up,说明启动成功。

也可以查看日志:

docker logs -f nacos

五、Windows 配置 Nacos

1. 下载 Nacos

进入 Nacos 官方下载页面,下载对应版本的压缩包。

https://nacos.io/download/nacos-server/

下载后解压到自己常用的软件目录,例如:

D:\developer\nacos

2. 配置启动模式

进入 Nacos 的 bin 目录:

D:\developer\nacos\bin

Windows 启动文件一般是:

startup.cmd

单机模式启动:

startup.cmd -m standalone

3. Windows 访问地址

如果是 Nacos 2.x,一般访问:

http://localhost:8848/nacos

如果是 Nacos 3.x,一般访问:

http://localhost:8080/

默认账号密码通常是:

nacos
nacos

六、端口重要事项

Nacos 常见端口如下:

端口作用
8848Nacos 服务端口,Spring Cloud 项目连接 Nacos 时常用
9848Nacos 2.x/3.x gRPC 通信端口
9849Nacos 服务端 gRPC 相关端口
8080Nacos 3.x 控制台页面端口

Nacos 2.x 常见访问方式:

http://虚拟机IP:8848/nacos

Nacos 3.x 常见访问方式:

http://虚拟机IP:8080/

如果使用 Nacos 3.x,但是访问:

http://虚拟机IP:8848/nacos

可能会看到类似提示:

Nacos Console default port is 8080, and the path is /.

这表示控制台页面应该访问 8080 端口,而不是 8848/nacos

如果是在虚拟机中使用 Docker,还要注意:

  • Docker 启动时要用 -p 映射端口;
  • Windows 浏览器访问的是虚拟机 IP,不是容器内部 IP;
  • 虚拟机防火墙或 Windows 防火墙可能会影响访问;
  • Spring Boot 项目连接 Nacos 时,通常连接的是 8848 端口。

Spring Boot 中示例配置:

spring:
  cloud:
    nacos:
      discovery:
        server-addr: 172.16.10.23:8848
      config:
        server-addr: 172.16.10.23:8848

七、总结

如果只是学习 Spring Cloud Alibaba,推荐使用:

nacos/nacos-server:v2.5.2

访问地址:

http://虚拟机IP:8848/nacos

如果想使用 Nacos 3.x,需要注意控制台端口变成了:

8080

访问地址:

http://虚拟机IP:8080/

简单记忆:

2.x 控制台:8848/nacos
3.x 控制台:8080/
项目连接:一般还是 8848
Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐