場景一:tensorboard直接運行在服務器上
tensorboard啟動后訪問地址為:0.0.0.0:6006,這是遠程服務器的訪問端口,無法用本地瀏覽器打開。
解決辦法:
- 端口重定向。即將服務器的6006端口重定向到本地電腦的端口。
ssh -L 16006:127.0.0.1:6006 username@remote_server_ip
其中:16006:127.0.0.1代表自己機器上的16006號端口,6006是服務器上tensorboard使用的端口。
- 在服務器上使用6006端口正常啟動tensorboard。
tensorboard --logdir=xxx --port=6006
- 在本地瀏覽器中輸入訪問地址
127.0.0.1:16006
場景二:tensorboard運行在服務器的docker容器上
此時要做兩次端口重定向,即:容器端口——>服務器端口——>本地端口
- 創建容器時指定容器到服務器的端口映射
注意:是創建容器時,不是打開容器時。
sudo -docker run -p 6666:6006 --name test -it 鏡像id
上述命令將容器的6006端口映射到了服務器的6666端口
- 再建立服務器到本地的端口映射
ssh -L 16006:127.0.0.1:6666 username@remote_server_ip
由此便實現了從容器:6006——>服務器:6666——>本地:16006 的端口映射