# Nacos 安装指南

# 1.Windows 安装

开发阶段采用单机安装即可。

# 1.1. 下载安装包

在 Nacos 的 GitHub 页面,提供有下载链接,可以下载编译好的 Nacos 服务端或者源代码:

GitHub 主页:https://github.com/alibaba/nacos

GitHub 的 Release 下载页:https://github.com/alibaba/nacos/releases

如图:

image-20210402161102887

本课程采用 1.4.1. 版本的 Nacos,课前资料已经准备了安装包:

image-20210402161130261

windows 版本使用 nacos-server-1.4.1.zip 包即可。

# 1.2. 解压

将这个包解压到任意非中文目录下,如图:

image-20210402161843337

目录说明:

  • bin:启动脚本
  • conf:配置文件

# 1.3. 端口配置

Nacos 的默认端口是 8848,如果你电脑上的其它进程占用了 8848 端口,请先尝试关闭该进程。

如果无法关闭占用 8848 端口的进程,也可以进入 nacos 的 conf 目录,修改配置文件中的端口:

image-20210402162008280

修改其中的内容:

image-20210402162251093

# 1.4. 启动

启动非常简单,进入 bin 目录,结构如下:

image-20210402162350977

然后执行命令即可:

  • windows 命令:

    startup.cmd -m standalone
    

执行后的效果如图:

image-20210402162526774

# 1.5. 访问

在浏览器输入地址:http://127.0.0.1:8848/nacos 即可:

image-20210402162630427

默认的账号和密码都是 nacos,进入后:

image-20210402162709515

# 2.Linux 安装

Linux 或者 Mac 安装方式与 Windows 类似。

# 2.1. 安装 JDK

Nacos 依赖于 JDK 运行,所以 Linux 上也需要安装 JDK 才行。

上传 jdk 安装包:

image-20210402172334810

上传到某个目录,例如: /usr/local/

然后解压缩:

tar -xvf jdk-8u144-linux-x64.tar.gz

然后重命名为 java

配置环境变量:

export JAVA_HOME=/usr/local/java
export PATH=$PATH:$JAVA_HOME/bin

刷新环境变量:

source /etc/profile

# 2.2. 上传安装包

如图:

image-20210402161102887

也可以直接使用课前资料中的 tar.gz:

image-20210402161130261

上传到 Linux 服务器的某个目录,例如 /usr/local/src 目录下:

image-20210402163715580

# 2.3. 解压

命令解压缩安装包:

tar -xvf nacos-server-1.4.1.tar.gz

然后删除安装包:

rm -rf nacos-server-1.4.1.tar.gz

目录中最终样式:

image-20210402163858429

目录内部:

image-20210402164414827

# 2.4. 端口配置

与 windows 中类似

# 2.5. 启动

在 nacos/bin 目录中,输入命令启动 Nacos:

sh startup.sh -m standalone

# 3.Nacos 的依赖

父工程:

<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-alibaba-dependencies</artifactId>
    <version>2.2.5.RELEASE</version>
    <type>pom</type>
    <scope>import</scope>
</dependency>

客户端:

<!-- nacos 客户端依赖包 -->
<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>

# 4. Docker 安装 nacos

通过指定 Nacos 镜像的标签(tag)来选择特定版本。对于 Nacos 1.4.1 版本,你可以使用 **1.4.1** 标签。以下是在 Linux 的 Docker 中创建一个 Nacos 1.4.1 容器的步骤:

  1. 拉取 Nacos 1.4.1 镜像:

    打开终端,执行以下命令拉取 Nacos 1.4.1 镜像:

    docker pull nacos/nacos-server:1.4.1

    这将从 Docker Hub 上下载 Nacos 1.4.1 版本的官方镜像

  2. 创建数据库我们到数据库中先创建一个数据库名为 nacos 或者随意都行

    sql 表 到官网的 github 中 copy 就行了然后创建即可:https://github.com/alibaba/nacos/blob/master/config/src/main/resources/META-INF/nacos-db.sql

    image-20240322085318286

    2.1 创建挂在目录和配置文件如下

    mkdir -p /mydata/nacos/logs/                      #新建 logs 目录
    mkdir -p /mydata/nacos/init.d/          
    vim /mydata/nacos/init.d/custom.properties        #修改配置文件

    修改 custom.properties 配置文件:

    把下面的数据库连接配置修改为自己的

    server.contextPath=/nacos
    server.servlet.contextPath=/nacos
    server.port=8848
    spring.datasource.platform=mysql
    db.num=1
    db.url.0=jdbc:mysql://xx.xx.xx.x:3306/nacos_config? characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true #这里需要修改端口
    db.user=user #用户名
    db.password=pass #密码
    nacos.cmdb.dumpTaskInterval=3600
    nacos.cmdb.eventTaskInterval=10
    nacos.cmdb.labelTaskInterval=300
    nacos.cmdb.loadDataAtStart=false
    management.metrics.export.elastic.enabled=false
    management.metrics.export.influx.enabled=false
    server.tomcat.accesslog.enabled=true
    server.tomcat.accesslog.pattern=%h %l %u %t "%r" %s %b %D %{User-Agent}i
    nacos.security.ignore.urls=/,/**/*.css,/**/*.js,/**/*.html,/**/*.map,/**/*.svg,/**/*.png,/**/*.ico,/console-fe/public/**,/v1/auth/login,/v1/console/health/**,/v1/cs/**,/v1/ns/**,/v1/cmdb/**,/actuator/**,/v1/console/server/**
    nacos.naming.distro.taskDispatchThreadCount=1
    nacos.naming.distro.taskDispatchPeriod=200
    nacos.naming.distro.batchSyncKeyCount=1000
    nacos.naming.distro.initDataRatio=0.9
    nacos.naming.distro.syncRetryDelay=5000
    nacos.naming.data.warmup=true
    nacos.naming.expireInstance=true
  3. 创建并运行 Nacos 容器:

    执行以下命令创建并运行 Nacos 容器:

    docker  run \
    --name nacos -d \
    -p 8848:8848 \
    --privileged=true \
    --restart=always \
    -e JVM_XMS=256m \
    -e JVM_XMX=256m \
    -e MODE=standalone \
    -e PREFER_HOST_MODE=hostname \
    -v /mydata/nacos/logs:/home/nacos/logs \
    -v /mydata/nacos/init.d/custom.properties:/home/nacos/init.d/custom.properties \
    nacos/nacos-server

    可用设置:docker update --restart=always nacos

    这将在后台运行一个名为 **nacos-server** 的容器,并将容器的 8848 端口映射到主机的 8848 端口。

    参数说明:

    • -e MODE=standalone 单机启动
    • --restart=always 启动 docker 时自动启动 nacos