赞
踩
在服务器上面跑YOLOV5-5.0
,想要通过内置的tensorbord
函数来查看训练的过程
使用命令
tensorboard --logdir=runs/train
查看训练的过程,会弹出
但是这个是服务器上面的 ip,是本地访问,我是要远程访问服务器的这个地址端口
因此,我访问 http://(远程服务器的ip地址):6006/
但是无法访问到服务器上面的端口号,访问就显示无法访问
网上也查询了很多,有的说想要访问远程服务器上面的tensorbord
,得用隧道,在Xsehll
上面对这个连接加一个隧道的设置
我也试过了,没有用,还是无法访问,只不过结果变成了我要访问的地址已经转移了
(这里就不放图片了,反正就是不行)
我也曾以为是不是端口的问题,防火墙打开了,没有放行
但是经过查询,发现远程服务器的防火墙是关闭的,而且网上也有这种说法,就是防火墙关了,但是端口还是访问不了。
这个方法我没有试过(但我估计不行)
解决方法就是把防火墙重启:
systemctl start firewalld
开放端口:
firewall-cmd --zone=public --add-port=6006/tcp --permanent
重新加载配置:
firewall-cmd --reload
systemctl stop firewalld
查看防火墙状态
systemctl status firewalld
服务器上面的tensorbord
确实是启动了,但是它只监听了本地的请求,像我这种在远程上面去访问的,它是会拒绝的
所以就两种方法,一种就是使用Nginx反向代理,另一种就是使用命令的时候加参数
这里使用的是第二种
方法很简单,在原来的命令基础上加一个参数就可以了
tensorboard --logdir=runs/train --bind_all
使用这个命令后,就可以在本地电脑上面通过访问 http://(远程服务器的ip地址):6006/
来查看训练结果了
tensorboard --logdir=runs/train
这个命令默认是使用6006端口号,如果你想自定义的话或者这个端口号被使用了,加一个参数就可以了,比如想使用6999端口号
tensorboard --logdir=runs/train --port 6999 (--bind_all)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。