1、idea启动正常,cmd和powershell启动jar包失败,由于编码问题:
在cmd执行
java -Dfile.encoding=utf-8 -jar api-server.jar
在 PowerShell执行加单引号
java '-Dfile.encoding=utf-8' -jar api-server.jar
2、本地部署nacos1.4.2,idea启动正常,本地jar包启动,错误日志如下,因为nacos2.0.3版本,bootstrap.yaml可以不加username和password,1.4.2需要加username和password,否则报如下错误
2022-03-09 11:00:05.627 ERROR 20568 [] --- [ecurity.updater] c.a.nacos.client.security.SecurityProxy : login failed: {"code":403,"message":"unknown user!","header":{"header":{"Accept-Charset":"UTF-8","Accept-Encoding":"gzip","Connection":"keep-alive","Content-Length":"13","Content-Type":"text/html;charset=UTF-8","Date":"Wed, 09 Mar 2022 03:00:05 GMT","Keep-Alive":"timeout=60"},"originalResponseHeader":{"Connection":["keep-alive"],"Content-Length":["13"],"Content-Type":["text/html;charset=UTF-8"],"Date":["Wed, 09 Mar 2022 03:00:05 GMT"],"Keep-Alive":["timeout=60"]},"charset":"UTF-8"}}
3、报错如下,server连接错误,nacos未启动或者nacos版本不一致,nacos2.0.3的客户端无法连接nacos1.4.2的server。
java.util.concurrent.TimeoutException: Waited 3000 milliseconds
c.a.n.c.remote.client.grpc.GrpcClient : Server check fail, please check server 192.168.1.2 ,port 9848 is available , error ={}
java.util.concurrent.ExecutionException: com.alibaba.nacos.shaded.io.grpc.StatusRuntimeException: UNAVAILABLE: io exception
4、遇到启动成功,但是浏览器无法访问,先检查一下启动命令指定的端口是否程序内部设置端口一致,程序端口=容器暴露端口,程序端口可以在nacos配置修改,容器暴露端口在Dockerfile修改
5、(转载)
Nacos2.0增加了9848,9849端口来进行GRPC通信,我需要在application.properties中额外配置吗?
不需要,这两个端口在Nacos2.0内部是通过8848+1000以及8848+1001这种偏移量方式计算出来的,不需要用户额外在配置文件中配置。但如果使用的是docker或存在端口转发方式启动,需要把这两个端口进行配置。
所以在docker环境中我们需要开放8849 9848 9849 三个端口