文章目录
一、简介
1.1 nacos简介
- 一、简介
- 1.1 nacos简介
- 1.2 相关链接
- 二、环境准备
- 2.1 基础环境部署
- 2.2 下载SQL文件
- 2.3 创建数据和配置存放目录
- 三、安装nacos
- 3.1 运行nacos
- 3.2 复制相关文件
- 3.3 修改nacos配置文件
- 3.4 启动nacos
- 3.5 登录nacos控制台
Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。
Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。 Nacos 是构建以“服务”为中心的现代应用架构 (例如微服务范式、云原生范式) 的服务基础设施。
简单来说,可以理解为注册中心与配置中心
1.2 相关链接- nacos官网:https://nacos.io/zh-cn/docs/what-is-nacos.html
- github:https://github.com/alibaba/nacos/releases
- 官方镜像:https://hub.docker.com/r/nacos/nacos-server
- centos 7.8
- docker 19.03.11
- mysql 5.7.22
- 下载SQL文件
# 下载nacos数据库文件
https://github.com/alibaba/nacos/blob/master/distribution/conf/nacos-mysql.sql
- 创建数据库用户
用户:nacos,密码:nacos
注意:nacos 用户权限问题
- sql文件导入数据库
source nacos-mysql.sql
2.3 创建数据和配置存放目录
mkdir -p /opt/docker/nacos/{conf,logs,data}
注:
- conf:nacos配置存放目录
- logs:nacos日志存放目录
- data:nacos数据存放目录
docker run -d -p 8848:8848 \
--name nacos \
--ip 192.168.21.201 \
--env MODE=standalone \
--env SPRING_DATASOURCE_PLATFORM=mysql \
--env MYSQL_SERVICE_HOST=192.168.21.201 \
--env MYSQL_SERVICE_PORT=13306 \
--env MYSQL_SERVICE_DB_NAME=nacos \
--env MYSQL_SERVICE_USER=root \
--env MYSQL_SERVICE_PASSWORD=mysql2021 \
nacos/nacos-server:1.4.1
注:
MODE=standalone standalone代表着单机模式运行,非集群模式
SPRING_DATASOURCE_PLATFORM=mysql standalone 支持 mysql
--ip 192.168.21.201 nacos服务器IP
MYSQL_SERVICE_HOST mysql数据库地址
MYSQL_SERVICE_PORT mysql数据库端口
MYSQL_SERVICE_DB_NAME mysql数据库名
MYSQL_SERVICE_USER mysql数据库用户名
MYSQL_SERVICE_PASSWORD mysql数据库密码
3.2 复制相关文件
- 把容器中的 nacos 文件复制出来
docker cp -a nacos:/home/nacos/ /opt/docker/
- 删除 nacos 容器
docker rm -f nacos
3.3 修改nacos配置文件
- 编辑nacos配置文件
vim /opt/docker/nacos/conf/application.properties
server.contextPath=/nacos
server.port=8848
nacos.inetutils.ip-address=192.168.21.201
spring.datasource.platform=mysql
nacos.cmdb.dumpTaskInterval=3600
nacos.cmdb.eventTaskInterval=10
nacos.cmdb.labelTaskInterval=300
nacos.cmdb.loadDataAtStart=false
db.num=1
db.url.0=jdbc:mysql://192.168.21.201:13306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user=root
db.password=mysql2021
nacos.core.auth.system.type=nacos
nacos.core.auth.default.token.expire.seconds=${NACOS_AUTH_TOKEN_EXPIRE_SECONDS:18000}
nacos.core.auth.default.token.secret.key=${NACOS_AUTH_TOKEN:SecretKey012345678901234567890123456789012345678901234567890123456789}
nacos.core.auth.caching.enabled=${NACOS_AUTH_CACHE_ENABLE:false}
nacos.core.auth.enable.userAgentAuthWhite=${NACOS_AUTH_USER_AGENT_AUTH_WHITE_ENABLE:false}
nacos.core.auth.server.identity.key=${NACOS_AUTH_IDENTITY_KEY:serverIdentity}
nacos.core.auth.server.identity.value=${NACOS_AUTH_IDENTITY_VALUE:security}
server.tomcat.accesslog.enabled=${TOMCAT_ACCESSLOG_ENABLED:false}
server.tomcat.accesslog.pattern=%h %l %u %t "%r" %s %b %D
server.tomcat.basedir=
nacos.security.ignore.urls=${NACOS_SECURITY_IGNORE_URLS:/,/error,/**/*.css,/**/*.js,/**/*.html,/**/*.map,/**/*.svg,/**/*.png,/**/*.ico,/console-fe/public/**,/v1/auth/**,/v1/console/health/**,/actuator/**,/v1/console/server/**}
management.metrics.export.elastic.enabled=false
management.metrics.export.influx.enabled=false
nacos.naming.distro.taskDispatchThreadCount=10
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
- 配置解释
server.contextPath
server.port=8848 nacos端口
spring.datasource.platform=mysql 支持mysql数据库
nacos.inetutils.ip-address=192.168.21.201 nacos内网服务器IP
db.num=1 mysql数据库
db.url.0=jdbc:mysql://192.168.21.201:13306/nacos_config? mysql数据库配置信息
nacos.core.auth.system.type 要使用的认证系统,目前只支持“nacos”
db.user=root mysql数据库用户
db.password=mysql2021 mysql数据库用户密码
3.4 启动nacos
- 启动nacos
docker run -d -p 8848:8848 \
--name nacos \
-v /etc/localtime:/etc/localtime \
-v /etc/timezone:/etc/timezone \
-v /opt/docker/nacos/conf:/home/nacos/conf \
-v /opt/docker/nacos/logs:/home/nacos/logs \
-v /opt/docker/nacos/data:/home/nacos/data \
nacos/nacos-server:1.4.1
- 查看nacos容器是否生成
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
9eb09ef63d88 nacos/nacos-server:1.4.1 "bin/docker-startup.…" 51 seconds ago Up 50 seconds 0.0.0.0:8848->8848/tcp nacos
- 查看nacos启动日志
# docker logs -f nacos
+ export CUSTOM_SEARCH_NAMES=application,custom
+ CUSTOM_SEARCH_NAMES=application,custom
+ export CUSTOM_SEARCH_LOCATIONS=/home/nacos/init.d/,file:/home/nacos/conf/
+ CUSTOM_SEARCH_LOCATIONS=/home/nacos/init.d/,file:/home/nacos/conf/
......
,--.
,--.'|
,--,: : | Nacos 1.4.1
,`--.'`| ' : ,---. Running in cluster mode, All function modules
| : : | | ' ,'\ .--.--. Port: 8848
: | \ | : ,--.--. ,---. / / | / / ' Pid: 29
| : ' '; | / \ / \. ; ,. :| : /`./ Console: http://192.168.21.201:8848/nacos/index.html
' ' ;. ;.--. .-. | / / '' | |: :| : ;_
| | | \ | \__\/: . .. ' / ' | .; : \ \ `. https://nacos.io
' : | ; .' ," .--.; |' ; :__| : | `----. \
| | '`--' / / ,. |' | '.'|\ \ / / /`--' /
' : | ; : .' \ : : `----' '--'. /
; |.' | , .-./\ \ / `--'---'
'---' `--`---' `----'
......
2021-02-19 21:25:52,323 INFO Nacos is starting...
2021-02-19 21:25:52,837 INFO Nacos started successfully in cluster mode. use external storage
3.5 登录nacos控制台
- 链接:http://IP地址:8848/nacos
- 用户名:默认是 nacos
- 密码:默认是 nacos