下载地址/官网:Nacos 3.0.0 Release
Nacos 在这套微服务里只做服务注册与发现,不用它做配置中心。本文部署 standalone 模式,适合本机学习和单机部署;页面访问、端口检查、开机自启都会覆盖到。
先安装 JDK 21。Nacos 启动脚本本质上是启动一个 Java 进程,
java -version能看到 21 再继续。
安装包下载
- Windows 下载
nacos-server-3.0.0.zip。 - Ubuntu 和 macOS 下载
nacos-server-3.0.0.tar.gz。
后面三个系统使用的是同一个 Nacos 发行包,区别只在解压命令、启动脚本和后台运行方式。
Windows 部署 Nacos 3
- 创建目录并解压:
New-Item -ItemType Directory -Force -Path D:\apps
Expand-Archive .\nacos-server-3.0.0.zip -DestinationPath D:\apps
解压后目录一般是:
D:\apps\nacos
- 进入启动脚本目录:
cd D:\apps\nacos\bin
- 以 standalone 模式启动:
.\startup.cmd -m standalone
- 新开一个 PowerShell,检查端口:
Test-NetConnection 127.0.0.1 -Port 8848
TcpTestSucceeded 为 True 即可。
- 打开控制台:
http://127.0.0.1:8848/
默认账号密码通常为:
nacos
nacos
- 停止 Nacos:
cd D:\apps\nacos\bin
.\shutdown.cmd
Windows 本机学习可以直接保留启动窗口。窗口关闭或进程结束后,Nacos 也会停止。
Ubuntu 部署 Nacos 3
- 进入存放安装包的目录,解压到
/opt/nacos:
sudo mkdir -p /opt/nacos
sudo tar -xzf nacos-server-3.0.0.tar.gz -C /opt/nacos --strip-components=1
- 创建专用运行用户:
sudo useradd --system --home /opt/nacos --shell /usr/sbin/nologin nacos
sudo chown -R nacos:nacos /opt/nacos
- 前台手动试启动一次:
sudo -u nacos /opt/nacos/bin/startup.sh -m standalone
启动脚本会输出日志文件路径,打开对应日志确认没有异常后停止:
sudo -u nacos /opt/nacos/bin/shutdown.sh
- 创建 systemd 服务:
sudo vim /etc/systemd/system/nacos.service
写入:
[Unit]
Description=Nacos Server
After=network.target
[Service]
Type=forking
User=nacos
Group=nacos
Environment=JAVA_HOME=/usr/lib/jvm/java-21-openjdk-amd64
ExecStart=/opt/nacos/bin/startup.sh -m standalone
ExecStop=/opt/nacos/bin/shutdown.sh
Restart=on-failure
TimeoutSec=60
[Install]
WantedBy=multi-user.target
- 启动并设置开机自启:
sudo systemctl daemon-reload
sudo systemctl enable --now nacos
- 查看状态和日志:
sudo systemctl status nacos --no-pager
sudo journalctl -u nacos -f
- 验证端口:
ss -lntp | grep -E '8848|9848|9849|7848'
能看到 Nacos 相关进程监听这些端口即为正常。再用浏览器访问:
http://服务器IP:8848/
macOS 部署 Nacos 3
- 解压安装包:
mkdir -p ~/apps
tar -xzf nacos-server-3.0.0.tar.gz -C ~/apps
- 启动:
cd ~/apps/nacos/bin
./startup.sh -m standalone
- 检查进程:
jps -l
能看到 Nacos 相关 Java 进程。
- 访问控制台:
http://127.0.0.1:8848/
- 停止:
./shutdown.sh
macOS 更适合本机开发调试。长期服务器部署建议使用 Ubuntu systemd 管理进程。
接入微服务
这套项目只需要 Nacos Discovery,不需要 Nacos Config。公共账号配置如下:
spring:
cloud:
nacos:
discovery:
username: nacos
password: nacos
生产环境地址写入各服务的 application-prod.yaml:
spring:
cloud:
nacos:
discovery:
server-addr: 127.0.0.1:8848
启动业务服务后,在 Nacos 控制台的服务列表里应能看到:
service-provider
service-consumer
service-mail
service-gateway
standalone 模式的数据在哪里
开发环境的 standalone 模式默认使用内嵌 Derby 存储。数据通常保存在 Nacos 目录下的 data 相关目录中,所以不要随手删除整个
Nacos 目录。
如果要重建本地环境:
- 停止 Nacos。
- 备份
data目录。 - 删除或迁移旧数据。
- 重新启动。
生产环境注意事项
- 不要把
8848、9848、9849、7848暴露到公网。 - 登录后修改默认密码。
- 根据实际安全要求开启鉴权,并保存好密钥配置。
- 生产建议使用外置 MySQL 存储,并提前备份 Nacos 数据。
- 单机 standalone 适合学习和轻量部署;真正生产高可用需要集群规划。
常见问题
启动后马上退出
优先看 Nacos 日志。常见原因有三个:JDK 不存在、JDK 版本不对、服务器内存不足。先执行 java -version,再看 logs 目录下最新日志。
页面打不开但进程还在
检查 8848 端口是否监听,确认访问地址没有多写 nacos 路径。Nacos 3 的控制台入口以实际发行包文档和页面提示为准。
服务注册不上
在业务服务所在机器上确认:
curl http://Nacos服务器IP:8848/
如果机器之间网络不通,检查安全组和防火墙。Nacos 客户端通信还需要 9848 等端口,不要只开放 8848。
账号密码正确但注册失败
确认 Nacos 服务端鉴权配置和客户端 config/application-nacos.yaml 是否匹配。密码修改后,需要同步更新应用配置并重启业务服务。