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

浙公网安备 33010602011771号