近年来获得的成功可以分为三种:登录成功、下载成功、付款成功
官方链接
| 名称 | 版本 | 地址 |
|---|---|---|
| Nacos官网 | 2.1.1 | https://nacos.io/zh-cn/ |
部署步骤
0. 准备环境
- 创建虚拟机
- 安装docker
- 安装docker-compose
- Mysql数据库
自行百度,不再赘述
1. 创建 Nacos 数据库
初始化mysql数据库,数据库初始化文件:nacos-mysql.sql
该sql文件存在nacos安装包中,从安装包中找
2. docker 拉取 nacos镜像
docker pull nacos/nacos-server:v2.1.1
3. 创建目录
nacos-docker -- nacos集群的相关文件
├── docker-compose.yml -- docker-compose 配置文件
├── master -- nacos节点的相关文件
├── application.properties -- naocs节点挂载的配置文件
├── logs -- nacos 节点挂载的日志文件夹
├── slave1 -- nacos节点的相关文件
├── application.properties -- naocs节点挂载的配置文件
├── logs -- nacos 节点挂载的日志文件夹
├── slave2 -- nacos节点的相关文件
├── application.properties -- naocs节点挂载的配置文件
├── logs -- nacos 节点挂载的日志文件夹
4. application.properties
server.servlet.contextPath=/nacos
server.error.include-message=ON_PARAM
# 端口号
server.port=8848
# 数据库信息的配置
pring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://127.0.0.1:3306/nacos_config?useUnicode=true&characterEncoding=utf8&useSSL=false
db.user=root
db.password=root
# 以下为默认配置,暂时不用管
### Connection pool configuration: hikariCP
db.pool.config.connectionTimeout=30000
db.pool.config.validationTimeout=10000
nacos.naming.empty-service.auto-clean=true
nacos.naming.empty-service.clean.initial-delay-ms=50000
nacos.naming.empty-service.clean.period-time-ms=30000
management.metrics.export.elastic.enabled=false
management.metrics.export.influx.enabled=false
server.tomcat.accesslog.enabled=true
### The access log pattern:
server.tomcat.accesslog.pattern=%h %l %u %t "%r" %s %b %D %{User-Agent}i %{Request-Source}i
server.tomcat.basedir=file:.
nacos.core.auth.system.type=nacos
nacos.core.auth.enabled=false
nacos.core.auth.caching.enabled=true
nacos.core.auth.enable.userAgentAuthWhite=false
nacos.core.auth.server.identity.key=serverIdentity
nacos.core.auth.server.identity.value=security
### The token expiration in seconds:
nacos.core.auth.plugin.nacos.token.expire.seconds=18000
### The default token:
nacos.core.auth.plugin.nacos.token.secret.key=SecretKey012345678901234567890123456789012345678901234567890123456789
cos.istio.mcp.server.enabled=false
5. Docker中自定义网络
创建集群你需要知道 IP 吧,那么怎么给启动的容器指定 IP 呢?我们就需要自定义网络
docker network create --driver bridge --subnet 172.20.0.0/16 --gateway 172.20.0.1 cloud_net
6. docker-compose.yml
version : '3.8'
services:
nacos-master:
# 容器名称
container_name: nacos-master
# 镜像
image: nacos/nacos-server:v2.1.1
environment:
# 集群节点
- NACOS_SERVERS=172.20.0.2:8848 172.20.0.3:8848 172.20.0.4:8848
volumes:
# 文件挂载
- ./master/logs/:/home/nacos/logs
- ./master/application.properties:/home/nacos/conf/application.properties
ports:
# 端口映射
- "8848:8848"
- "9848:9848"
- "9849:9849"
# 指定网络,IP
networks:
cloud_net:
ipv4_address: 172.20.0.2
nacos-slave1:
container_name: nacos-slave1
image: nacos/nacos-server:v2.1.1
environment:
- NACOS_SERVERS=172.20.0.2:8848 172.20.0.3:8848 172.20.0.4:8848
volumes:
- ./slave1/logs/:/home/nacos/logs
- ./slave1/application.properties:/home/nacos/conf/application.properties
ports:
- 8850:8848
- 9850:9848
- 9851:9849
networks:
cloud_net:
ipv4_address: 172.20.0.3
nacos-slave2:
container_name: nacos-slave2
image: nacos/nacos-server:v2.1.1
environment:
- NACOS_SERVERS=172.20.0.2:8848 172.20.0.3:8848 172.20.0.4:8848
volumes:
- ./slave2/logs/:/home/nacos/logs
- ./slave2/application.properties:/home/nacos/conf/application.properties
ports:
- "8852:8848"
- "9852:9848"
- "9853:9849"
networks:
cloud_net:
ipv4_address: 172.20.0.4
# 指定使用已经创建的网络
networks:
default:
external:
name: cloud_net
cloud_net:
external: true
7. 创建容器
# -d 后台运行
docker-compose up -d
其他命令
# 关闭
docker-compose stop
# 运行
docker-compose start
# 删除
docker-compose rm
8. 开启鉴权
# 在 application.properties 将 nacos.core.auth.enabled 设为 true
nacos.core.auth.system.type=nacos
nacos.core.auth.enabled=true
修改完配置后不是立即生效,需要将容器重启
docker-compose restart
部署注意点
-
docker搭建nacos集群,挂载
cluster.conf文件不起作用。需要在docker-compose.yml文件中配置集群的节点version : '3.8' services: nacos-master: environment: # 配置集群的节点 - NACOS_SERVERS=172.20.0.2:8848 172.20.0.3:8848 172.20.0.4:8848 -
指定网络与IP,关键配置
version : '3.8' services: nacos-master: networks: cloud_net: ipv4_address: 172.20.0.4 # 指定使用已经创建的网络 networks: default: external: name: cloud_net cloud_net: external: true -
通用配置连接
例如,内存大小,集群地址,数据库链接
https://nacos.io/zh-cn/docs/quick-start-docker.html
成功截图


本文详细介绍了如何通过Docker部署Nacos 2.1.1版本的集群,包括环境准备、数据库配置、镜像拉取、docker-compose配置及自定义网络,还涵盖了鉴权开启和部署注意事项。
862

被折叠的 条评论
为什么被折叠?



