文章目录
- 总览:
- ssh连接远程服务器
- 连接
- 免密登录:
- Docker:ssh连接远程宿主机后,进一步连接并使用其中的docker容器
- reload window
- 配置解释器:Ctrl+P,在上面输入“>python”, 然后选selecet interpreter
- 运行命令
- 方法一:直接在左边run and debug (可以断点调试):
- 方法二:不需要调试的话可以直接用terminal,完全支持tmux
- terminal美化(报错信息不同颜色)
- 换一个配色方案,但不会增加不同信息的区别显示:
- 给python输出的 报错信息增加不同颜色的显示:
- ssh 端口转发
- 代码自动补全
- 3D内容查看
- jupyter notebook
- github copilot平替codeium
- 图形界面X11
- 常用操作和观察
- 其他细节
- 左侧的explorer查看文件固定
总览:
- 优点:
- 方便,连上主机后可以直接连container,不需要额外配置container的ssh了;
- 支持jupyter notebook
- 调试也很方便
- ssh端口可以直接转发
- 甚至可以直接查看3D文件
- 缺点(可以用mobaxterm代替吧):
- 上传下载文件感觉不是特别方便?后面可以试试sftp插件
ssh连接远程服务器
连接
参考此链接:
https://zhuanlan.zhihu.com/p/667236864
- 安装插件remote-ssh
- 左侧栏点那个remote explorer (下图1),新建远程(new remote 下图2)
- 在顶部的命令框中输入:
ssh -P <port> user@XXX.XXX.XXX.XX
- 回车,还是顶部命令框,他会问你选那个配置文件,就用第一个就行,会生成这个配置文件
- 然后在remote explorer里面就会显示这个新添加的远程服务器,点右边的→或者另一个按钮来打开就行
- 还是窗口顶端,他会问你是什么平台Linux,Windows还是macOS,照着选就行
- 还是窗口顶端,会问你密码,输入即可
- 然后就连上了。
- 可以选择要打开的文件夹,如何之后想打开另外的文件夹,可以点File,Open Folder, 如下图
注意,选服务器类型,linux还是啥的,输密码,都是在顶部这个窗口:
免密登录:
- 本地主机生成密钥对:
ssh-keygen -t rsa -b 2048 -f C:\Users\YourUsername\.ssh\id_rsa
- 在远程服务器的~/.ssh/authorized_keys 这个文件中(没有就自己新建),粘贴自己本地主机的C:\Users\YourUsername.ssh\id_rsa.pub的内容(本地主机的公钥)。
- 在本地主机的C:\Users\YourUsername.ssh\config文件中,最后一行写上:IdentityFile: C:\Users\YourUsername.ssh\id_rsa (这一部是说,我要使用这个私钥文件)
Docker:ssh连接远程宿主机后,进一步连接并使用其中的docker容器
参考此文:
https://blog.csdn.net/weixin_45656074/article/details/131160299
注意!docker容器没有配置和远程宿主机的端口印射才能这样!否则还是当他是一台宿主机,走ssh。
安装docker扩展,安装完成后在左侧会多出一个docker 按钮:
点这个按钮,会显示containers, images,registries。
在container中右键你想要打开的容器,选attach visual studio code
注意,在每个容器中都要重新安装vscode扩展,如python等。
reload window
时间太久连不上远程的话,可以reload一下
ctrl + shift + P 输入reload
配置解释器:Ctrl+P,在上面输入“>python”, 然后选selecet interpreter
参考本文:https://blog.csdn.net/qq_41990294/article/details/119106112
先在远程安装extention Python。
Ctrl+P,在上面输入“>python”, 然后选selecet interpreter
运行命令
方法一:直接在左边run and debug (可以断点调试):
可以修改路径:选择with arguments
然后修改launch.json,加上cwd这一行,改成自己的路径:
切换回要跑的脚本之后,再运行,因为默认运行的是current file,如果还停留在json这个文件的话他跑的就是json,当然就会报错。
之后,顶部输入框会让你输入参数,有就输入,没有就直接回车就行。
如果打了断点,就是调试,上方是一些操作按钮:
左边会显示一些变量之类的情况:
但是可能很难找到自己想看的变量,在watch这里点加号,自己想看啥就加啥就行:
方法二:不需要调试的话可以直接用terminal,完全支持tmux
下面就是terminal,可以用
如果没显示terminal,可以把鼠标放在下面这条黑线上,黑线就会变成蓝线,往上拖动就可以了:
terminal美化(报错信息不同颜色)
https://blog.csdn.net/m0_73832962/article/details/132202467
换一个配色方案,但不会增加不同信息的区别显示:
File-》Preferences -》 settings,然后搜索workbench, 选apperence, Edit in settings.json,
从下面这个链接中:https://glitchbone.github.io/vscode-base16-term/#/
选择喜欢的,复制到最后那个json项ColorCustomization里面
给python输出的 报错信息增加不同颜色的显示:
在site-package文件夹中新建一个sitecustomize.py文件,并在文件中添加下列代码保存:
import sys
from IPython.core.ultratb import ColorTB
sys.excepthook = ColorTB()
ssh 端口转发
比如我们如果想看6006的,emm,tensorbaord,需要用到此功能。
直接在底部框里面添加这个port就行了:
亲测,docker容器内的ssh直接连本地windows,不需要配置docker容器和远程宿主机的端口印射,就可以直接印射到本地windows主机
代码自动补全
似乎自带自动补全功能
3D内容查看
安装插件3D Viewer for VSCode (好像打开ply不太行,就是一片绿色)
安装vscode-3d-preview : 支持ply,obj,off等格式。
jupyter notebook
如果打开了ipynb文件的话,会自动推荐哪些插件安装
安装了插件之后可以直接用,
跑完之后记得在这里restart来清除显存占用:
如果要指定工作路径,似乎最简单的方式是在开头搞一个cell来改路径:
github copilot平替codeium
学生认证可以免费,否则要付费。
https://zhuanlan.zhihu.com/p/578964972?utm_id=0
- 这里学生认证需要一个教育邮箱,以及证明的纸质材料现场拍照
- 根据上面的链接说,学信网的中文认证报告不行,得自己翻译成英文的才行
太麻烦了就没搞了
可以用这个免费的插件平替一下:Codeium
图形界面X11
https://blog.csdn.net/Stone_hello/article/details/120041495,
- 本地安装Xming
- 本地运行Xlaunch,使用默认的display number (0),一直下一步。
- C:/Users/username/.ssh.config 文件中,在对应的远程主机中添加:
- ForwardX11 yes
- ForwardX11Trusted yes
- ForwardAgent yes
- 远程主机中,确保ssh的配置文件 /etc/ssh/sshd_config中
- 直接试试terminal中行不行,不行的话,就试试下面两条:(第一条似乎更加通用,第二条可能需要直接ssh连docker容器才行)
- export DISPLAY=“你本地windows主机的ip地址:0.0” # 这个ip地址可以在本地主机中用ipconfig命令查看 (这一条需要本地打开XMing)
- export DISPLAY=“远程机的i名字:10.0” # 这个名字就是terminal里面显示的username@XXX, 里面这个XXX # 这一条似乎根本不用本地打开XMing
- 亲测不需要的步骤,但也可能在有的地方加上就好了:
- 在本地的Xming安装路径中修改X0.hosts (在localhost下面一行添加远程服务器的ip)
- 运行Xlaunch的时候,选no access control (disable access control)
补充说明:
我是如果用cmd用ssh连接远程,echo $DISPLAY,会发现DISPLAY被自动设置为了"远程机的i名字:10.0"。
参考:
https://superuser.com/questions/310197/how-do-i-fix-a-cannot-open-display-error-when-opening-an-x-program-after-sshi
常用操作和观察
单击打开一个文件可能是预览,再次单击其他文件就会覆盖这个文件;双击打开则不会如此
常用快捷键:
Ctrl + K + 0: 折叠所有代码块
Shirt + Alt + 方向键上或下:在上方或下方复制本行代码
Ctrl + ctrl + shift + P 输入reload: reload window
右边这个代码框,右边那一竖条,靠左的是git的改变,靠右的是报错或warning
代码框里面本身高亮为黄色的也是warning的。
其他细节
左侧的explorer查看文件固定
问:在vscode中,左侧有一个explorer,里面显示了文件夹的结构。但是,我一点开一个文件,explorer的内容就会自动跳到这个文件所在的文件夹。有什么办法让explorer固定住,不跟随右侧打开的文件而变化吗?
答:File,preferences,settings,搜索explorer,这个auto reveal 选false