ps,离线部署一堆大坑,记录几个印象深刻的吧,像忘记上传jar包tar包之类的就不记录了,但太匆忙这些低级错误确实会发生(实际上这次也发生了忘记传一个tar包的事情,汗),好在大坑填的差不多了,继续填小坑中。

1,Cannot start service 服务名:driver failed programming external connectivity on endpoint 巴拉巴拉这样一堆 iptables什么之类的

        这个反正是删dockers网桥,重启dockers就好了,具体是删网桥起作用了还是重启起作用了也弄不清楚。

2,多个模块发生:

Java.net.connectException:Connection refused

Caused by com.alibaba.nacos.shaded.io.netty.channel.Abstract Channel 巴拉巴拉一堆信息的错误,

这里本质上是网关服务没有注册到nacos上,导致其他服务都没有办法启动,试过了dockers建立自定义网络(实际上使用docker-compose启动已经是在同一个局域网中,可以使用命令看一下,具体叫啥名忘了),也试过link相关命令,都不太行,最后发现是dockers比宿主机低一个级别,导致的dockers没办法调用宿主机的端口(外面可以访问单独的服务,但是服务之间没办法相互调用),添加防火墙白名单重启,然后jar包ip设置为宿主机ip解决(具体解决步骤后面有时间慢慢写,这里仅写个思路)

3,Linux部署不成功的备用方案,使用Windows部署,出现了An attempt was mad to access a socket in a way forbidden by its access permissions。

        这个主要就是看谁使用80端口,比如IIS服务(可以上网查一下怎么关掉IIS服务),或者是安装了迅雷,或者就是我这种情况,给我的机子太老了,里面竟然还有个SQLServer,这可是我上大学时候的文物了,把这个SQL Server的服务关掉就好了。

4,记得启动你需要服务的各种端口,nacos除了默认的8848端口,把9848,9849也添加进去

5,把端口控制和个别有启动顺序的模块可以写一个sh脚本来控制,非常的便捷,因为不知道要重启,关闭,删除这些容器多少次,每次都手敲要累死。

6,适时摇人真的很重要,有时候卡一个小时的问题别人三两下就解决了。有网部署很舒服,珍惜有网环境,没网部署真难受,有bug都是抄纸上跑到有网的地方再查,有网且用且珍惜。

------------------------------------------------------------------------------------------------------------------------

继续补充

7,离线环境下如果输入ipconfig无内容,那么表示没有装网卡驱动,可以下载一个网卡驱动相关的软件,在离线同样的系统环境下备份一下相关网卡驱动(一般离线环境只备份网卡,不需要备份无线网卡),然后刻盘传输驱动软件和驱动备份到本机,恢复即可,这样局域网之间就可以互相发现了,可以使用飞Q等快速传文件。当然也可以下载相关驱动进行安装(这个我没去试,找资源太麻烦)

8,nacaos需要以VC++ 2015为前提,具体报错信息我忘了,大概就是启动nacos的时候界面一闪而过,查看日志文件,报c盘很多dll文件找不到之类的错误,这个就是需要提前安装VC++,关于VC++的版本,我感觉最起码得2015以上,因为我安装2013还是报这个错误。

9,node使用NVM来控制版本真的很方便,很方便,很方便(重要事情说三遍)