一、nacos 介绍
一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台
二、如何使用docker-compose 快速部署nacos2.2.0 for derby
Nacos 以standalone(单机模式)启动后,默认使用的内嵌式数据库 Derby 。不想安装Mysql的话,可使用这类嵌入内嵌式数据库存储数据。
默认采用内嵌式数据库 Derby ,数据存放在 /home/nacos/data/derby-data 目录下,我们只需要对数据目录做持久化就可以。
2.1 创建nacos 工作目录
mkdir -p /home/application/Middleware/nacos/2.2 编写docker-compose 文件
⚠️: Nacos是一个内部微服务组件,需要在可信的内部网络中运行,不可暴露在公网环境,防止带来安全风险。
- 自2.4.0版本开始,Nacos构建时不再提供管理员用户
nacos的默认密码,需要在首次开启鉴权后,通过API或Nacos控制台进行管理员用户nacos的密码初始化步骤 ; 具体参考: https://nacos.io/docs/latest/manual/admin/auth/#2-%E9%BB%98%E8%AE%A4%E6%8E%A7%E5%88%B6%E5%8F%B0%E7%99%BB%E5%BD%95%E9%A1%B5
cat >> /home/application/Middleware/nacos/docker-compose.yml << EOF
networks:
srebro:
driver: bridge
services:
nacos:
image: nacos/nacos-server:v2.2.0
container_name: nacos
networks:
- srebro
restart: always
ports:
# web 界面访问端口
- 8848:8848
# 程序使用 grpc 连接的端口
- 9848:9848
environment:
- MODE=standalone
# 开启鉴权,自定义的服务端身份识别键值对,配置JWT令牌密钥
- NACOS_AUTH_ENABLE=true
- NACOS_AUTH_TOKEN=u2n9mt0ukPWs5xuWwrxTTXlO9hBb6nVDTjOOLQKJww3a
- NACOS_AUTH_IDENTITY_KEY=srebrotest
- NACOS_AUTH_IDENTITY_VALUE=dGVzdHRlc3R0ZXN0dGVzdHRlc3R0ZXN0dGVzdHRlc3Q=
volumes:
- ./logs:/home/nacos/logs
- ./data:/home/nacos/data
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8848/nacos/actuator/health"]
interval: 30s
retries: 3
start_period: 10s
timeout: 10s
EOF2.4 运行docker-compose创建容器
[root@openeuler nacos]# docker-compose up -d
[+] Running 1/0
⠿ Container nacos Running
[root@openeuler nacos]# docker-compose ps
NAME COMMAND SERVICE STATUS PORTS
nacos "bin/docker-startup.…" nacos running 0.0.0.0:8848->8848/tcp, :::8848->8848/tcp, 0.0.0.0:9848->9848/tcp, :::9848->9848/tcp三、配置nacos
3.1 登录nacos,web控制台,修改密码
http://xx.xx.xx.xx:8848/nacos 默认用户名/密码: nacos/nacos

- 修改密码;自定义修改密码


四、关于客户端鉴权
添加了客户端鉴权, 这里以java 为例,微服务在注册的时候需要在 jvm 中 指定 nacos 的控制台用户名/密码
-Dspring.cloud.nacos.config.username='nacos'
-Dspring.cloud.nacos.config.password='xxx'
-Dspring.cloud.nacos.discovery.username='nacos'
-Dspring.cloud.nacos.discovery.password='xxx' 本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 运维小弟