Skip to content

Windows版本

1.下载nacos

官网

2.2.3

nacos常用命令
  • 默认集群启动

  • 启动单机版

sh
startup.cmd -m standalone

2.nacos集成

2.1.配置配置脚本

  1. 解压nacos,并将文件夹命名为:nacos-server-2.2.3
  2. 删除:startup.shshutdown.sh
  3. 创建bin文件夹,并创建脚本文件:startup.batshutdown.batrestart.batprogress.batstatus.bat
startup.bat:nacos启动脚本
  • 新建startup.bat
bat
@echo off
setlocal enabledelayedexpansion

set "BIN_DIR=%~dp0"
cd %BIN_DIR%
cd ..
set "APP_DIR=%cd%"
cd ..\..\
set "FINE_HOME=%cd%"
cd "%APP_DIR%"

rem 集成java
call %FINE_HOME%\bin\jdk\jre.bat

call %FINE_HOME%\lib\nacos-server-2.2.3\bin\startup.cmd

endlocal
  • 修改startup.cmd
bat
set MODE="cluster"
# 修改为
set MODE="standalone"
shutdown.bat:nacos有序关闭脚本
  • 新建shutdown.bat
bat
@echo off
setlocal enabledelayedexpansion

set "BIN_DIR=%~dp0"
cd %BIN_DIR%
cd ..
set "APP_DIR=%cd%"
cd ..\..\
set "FINE_HOME=%cd%"
cd "%APP_DIR%"

rem 集成java
call %FINE_HOME%\bin\jdk\jre.bat

call %FINE_HOME%\lib\nacos-server-2.2.3\bin\shutdown.cmd

endlocal
progress.bat:nacos是否启动脚本
bat
@echo off
setlocal enabledelayedexpansion
title "nacos-server-2.2.3"

rem 设置全局环境
set "BIN_DIR=%~dp0"
cd %BIN_DIR%
cd ..
set "APP_DIR=%cd%"
cd ..\..\
set "FINE_HOME=%cd%"
cd "%BIN_DIR%"

rem 集成java
call %FINE_HOME%\bin\jdk\jre.bat

set status=0

REM 构建配置文件路径
set "config_file=%APP_DIR%\conf\application.properties"

for /f "tokens=2 delims== " %%a in ('findstr "server.port=" "!config_file!"') do (
    set "process_port=%%a"
    set "process_port=!process_port: =!"
    goto :break
)
:break

set "process_name=nacos.nacos"

for /f "tokens=5" %%a in ('netstat -ano ^| findstr /R "\<0.0.0.0:%process_port%\>"') do (

	for /f "tokens=1" %%b in ('jcmd ^| find "!process_name!"') do (
        rem 端口一样,程序名一样:1
		if "%%b"=="%%a" (
            set status=1
			goto :break
		)
	)

    rem 端口一样,程序名不一样:-1
    set status=-1
    goto :break
    
)

:break

echo %status%

endlocal
status.bat:nacos是否启动完成脚本
bat
@echo off
setlocal enabledelayedexpansion

set "BIN_DIR=%~dp0"
cd %BIN_DIR%
cd ..
set "APP_DIR=%cd%"
cd ..\..\
set "FINE_HOME=%cd%"
cd "%BIN_DIR%"

REM 构建配置文件路径
set "config_file=%APP_DIR%\conf\application.properties"

for /f "tokens=2 delims== " %%a in ('findstr "server.port=" "!config_file!"') do (
    set "port=%%a"
    set "port=!port: =!"
    goto :break
)

:break
set "url=http://127.0.0.1:!port!"

set "status=0"

REM 使用 curl 检查 URL 的 HTTP 状态码
for /f "tokens=2 delims= " %%i in ('curl -I -X GET "%url%" 2^>^&1 ^| findstr /C:"HTTP/1.1"') do (
    set "status=1"
)

echo %status%
endlocal

3.1.添加声明文件

根节点创建manifest.json
json
{
    "name": "nacos",
    "nickname": "nacos",
    "version": "2.2.3",
    "filename": "nacos-server-2.2.3",
    "type": "lib",
    "source": "other",
    "system": "windows",
    "author": "北京凡图科技有限责任公司",
    "description": "nacos程序",
    "createTime": "2024-07-11 00:00:00",
    "isRunning": true,
    "logo": "/nacos.png",
    "property": {
        "isSystem": true,
        "isStartup": false,
        "isShutdown": false,
        "isRestart": false
    },
    "progress": "bin\\progress.bat",
    "startup": "bin\\startup.bat",
    "shutdown": "bin\\shutdown.bat",
    "status": "bin\\status.bat",
    "data": {
        "mysql": {
            "name": "fine_nacos",
            "install": {
                "2.2.3": "mysql-schema.sql"
            },
            "update": {}
        },
        "nacos": {
            "name": "",
            "install": {},
            "update": {}
        }
    },
    "url": [
        {
            "name": "nacos",
            "nickname": "nacos",
            "logo": "/nacos/nacos.png",
            "show": true,
            "location": "location /nacos { \n proxy_pass http://127.0.0.1:8848/nacos; \n proxy_connect_timeout 60s; \n proxy_read_timeout 180s; \n } "
        }
    ]
}

创建resources文件夹,添加logo.png图片

4.nacos持久化到mysql

  1. 修改application.properties配置文件
  2. 在数据库中创建fine_nacos
  3. 运行sql文件mysql-schema.sqlfine_nacos库中
  4. 重启nacos
application.properties:配置文件
  • nacos-server-2.2.3\conf\application.properties
properties
spring.sql.init.platform=mysql
db.num=1
db.url.0=jdbc:mysql://127.0.0.1:3306/fine_nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user.0=root
db.password.0=finemap@cn

5.Nacos使用

    1. 查看注册中心:服务列表
    1. 添加配置中心:配置列表

5.1.注册中心:权重配置

5.2.配置中心:配置热更新

5.3.配置中心:配置共享

5.4.集群

5.5.设置日志:Nacos -log - back.xml

Linux版本