Nacos--docker部署

拷贝配置文件

mkdir -p /work/nacos/{bin,data,conf,logs}

docker run --name nacos-quick -e MODE=standalone  -e NACOS_AUTH_IDENTITY_KEY=AUTH -e NACOS_AUTH_IDENTITY_VALUE=HntPjsaoYyk  -e NACOS_AUTH_TOKEN=djOtBF82O4Ef41Hg5TmTq9MrNnz57r22rKCdpCE4c5GL7TzWFQH1roXE31GGueh5  -p 8849:8848 -d nacos/nacos-server:v2.2.1

docker cp  200d316c917f:/home/nacos/conf/   /work/nacos/
docker rm -f nacos-quick

开启鉴权

修改 /work/nacos/conf/application.properties

nacos.core.auth.=true
nacos.core.auth.server.identity.key=AUTH
nacos.core.auth.server.identity.value=HntPjsaoYyk
nacos.core.auth.plugin.nacos.token.secret.key=djOtBF82O4Ef41Hg5TmTq9MrNnz57r22rKCdpCE4c5GL7TzWFQH1roXE31GGueh5

背景

1.4.0 之前是通过User-Agent中是否包含Nacos-Server来进行判断请求是否来自其他服务端

enabled:开启服务身份识别功能
identity.key、value:开启鉴权功能后,服务端之间的请求也会通过鉴权系统的影响。考虑到服务端之间的通信应该是可信的,因此在1.2~1.4.0版本期间,通过User-Agent中是否包含Nacos-Server来进行判断请求是否来自其他服务端。但这种实现由于过于简单且固定,导致可能存在安全问题。因此从1.4.1版本开始,Nacos添加服务身份识别功能,用户可以自行配置服务端的Identity,不再使用User-Agent作为服务端请求的判断标准。
token.secret.key: 自定义用于生成JWT令牌的密钥,密钥长度不得低于32字符

2.2.1开始去掉key,value,token.secret.key的默认值,启动是需要自己加上

测试

curl -X GET \
  'http://172.30.2.21:8848/nacos/v1/cs/configs?dataId=test&group=DEFAULT_GROUP' \
  -H 'AUTH: HntPjsaoYyk'

返回结果

test:
    test

启动脚本

docker run -d --network=host --restart=always \
        -v /work/nacos/logs:/home/nacos/logs \
        -v /work/nacos/data:/home/nacos/data \
        -v /work/nacos/conf/nacos-logback.xml:/home/nacos/conf/nacos-logback.xml \
        -v /work/nacos/conf/application.properties:/home/nacos/conf/application.properties \
        --log-opt max-size=10m \
        -v /etc/localtime:/etc/localtime:ro \
        -v /etc/timezone:/etc/timezone \
        -e PREFER_HOST_MODE=hostname \
        -e MODE=standalone \
        --name nacos-server nacos/nacos-server:v2.2.1
posted @   When?  阅读(146)  评论(0编辑  收藏  举报
编辑推荐:
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示