场景描述
疫情原因宅在家,实验室机器只能内网访问,还好有跳板机,但仅仅在控制台使用好像一点都不优雅呀,这里建议使用vscode remote development,本地优雅写代码,抛弃git反复同步
vscode通过跳板机(堡垒机)连接remote服务器_ssh,vscode,跳板机_TheWaySoFar-CSDN博客blog.csdn.net本地写代码的问题是解决了,那如果我想在本地访问服务器上启动的tensorboard、jupyter notebook等服务,又要怎么办呢?
步骤
在说明步骤之前,先命名三个服务器地址为local(本地)、jump(跳板机)、server(远端服务器),实际上的地址类似 sakura@172.6.6.6
- 首先在远端服务器正常启动服务,这里以启动tensorboard服务举例,在8888端口启动tensorboard服务
tensorboard --logdir=log --host=localhost --port=8888
2. 在跳板机上使用ssh将可用端口与远端服务器端口连接,由于一般跳板机多人使用,建议先用 netstat -ntlp 查看是否有人使用哦,这里将跳板机8999端口与远端服务器8888端口连接,期间可能需要输入密码
ssh -N -f -L localhost:8999:localhost:8888 server
- -N 告诉SSH没有命令要被远程执行
- -f 告诉SSH在后台执行
- -L 是指定port forwarding的配置,远端端口是8888,本地的端口号的8999
3. 本地端口与跳板机上对应端口连接,跳板机一般指定端口登录,因此在第2步的基础上,需要用-p指定登录端口,期间也可能需要输入密码
ssh -p 10099 -N -f -L localhost:8666:localhost:8888 jump
这里还有个小建议,windows用户可以使用内置的ubuntu系统优雅操作哟,tmux挂机不香吗