使用Docker部署Nacos 2.3.2开启鉴权后无法访问控制台 |
您所在的位置:网站首页 › 鉴权访问失败401 › 使用Docker部署Nacos 2.3.2开启鉴权后无法访问控制台 |
Docker 部署 Nacos 2.3.2 开启鉴权无法访问控制台
背景
由于业务需要,本人需要升级项目中使用到的微服务技术栈的版本,在将 nacos 从 2.0.3 升级到 2.3.2 时遇到一些问题,特此记录一下。 问题一、权限校验问题使用 docker 安装 nacos 2.2.2以后的版本需要自定义下面三个环境变量 # 一般用于自定义功能时鉴权,可以在请求头带上该key用以鉴权,详情看官方文档 NACOS_AUTH_IDENTITY_KEY=xxxxx # 一般用于自定义功能时鉴权,可以在请求头带上该value用以鉴权,详情看官方文档 NACOS_AUTH_IDENTITY_VALUE=xxxxx # jwt生成时使用的密钥,最少32Bytes,使用base64加密 NACOS_AUTH_TOKEN=xxxxx详情可以参考: Nacos 官方文档 Nacos Docker 官方文档 问题二、docker 部署后无法访问控制台的问题按照上述步骤成功部署,并且能连接上nacos后,发现浏览器访问时始终会报403: type=Forbidden, status=403 Invalid server identity key or value, Please make sure set `nacos.core.auth.server.identity.key` and `nacos.core.auth.server.identity.value`, or open `nacos.core.auth.enable.userAgentAuthWhite`后来经过排查,发现是下面这个环境变量出现问题 -e NACOS_AUTH_IDENTITY_VALUE=pg.R#b2c4.ANvh!IA14Z直接把其中的特殊符号去掉,然后再重启就行了 以下提供一个我自己能用的 docker 脚本,当然我后来用不同的密码重新部署了一次,所以这些信息就没用了,建议你们复制脚本后也改一下其中的敏感信息: docker run -d \ -e MODE=standalone \ -e JVM_XMS=128m \ -e JVM_XMX=128m \ -e JVM_XMN=128m \ -e SPRING_DATASOURCE_PLATFORM=mysql \ -e MYSQL_SERVICE_HOST=xxxxxx \ -e MYSQL_SERVICE_PORT=xxxx \ -e MYSQL_SERVICE_USER=xxxxxx\ -e MYSQL_SERVICE_PASSWORD=xxxxxxxx \ -e MYSQL_SERVICE_DB_NAME=xxxxxxx \ -e MYSQL_SERVICE_DB_PARAM='characterEncoding=utf8&connectTimeout=10000&socketTimeout=30000&autoReconnect=true&useSSL=false' \ -e NACOS_AUTH_ENABLE=true \ -e NACOS_AUTH_IDENTITY_KEY=xxxxxxxx \ -e NACOS_AUTH_IDENTITY_VALUE=pgRb2c4ANvhIA14Z \ -e NACOS_AUTH_TOKEN=NStQdHM3WCU3RVYlMjRZdG04aUolMkM3JTJDQnhyUCU1RXFMJTIxaiUyOCUyM1JZ \ -p 8848:8848 \ -p 9848:9848 \ --restart=always \ --privileged=true \ --name nacos nacos/nacos-server:v2.3.2 |
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |