天天看点

docker部署 单机版nacos一、简介二、环境准备三、安装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控制台

一、简介

1.1 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

二、环境准备

2.1 基础环境部署

  • centos 7.8
  • docker 19.03.11
  • mysql 5.7.22

2.2 下载SQL文件

  • 下载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数据存放目录

三、安装nacos

3.1 运行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
    docker部署 单机版nacos一、简介二、环境准备三、安装nacos

继续阅读