[AI开发配环境]VSCode远程连接ssh服务器
YuQiao0303 2024-08-02 13:01:02 阅读 61
文章目录
总览:ssh连接远程服务器连接免密登录:Docker:ssh连接远程宿主机后,进一步连接并使用其中的docker容器reload window
配置解释器:Ctrl+P,在上面输入“>python”, 然后选selecet interpreter运行命令方法一:直接在左边run and debug (可以断点调试):launch.json的常见写法:断点调试
方法二:不需要调试的话可以直接用terminal,完全支持tmux
terminal美化(报错信息不同颜色)换一个配色方案,但不会增加不同信息的区别显示:给python输出的 报错信息增加不同颜色的显示:
ssh 端口转发代码自动补全3D内容查看git 不知道哪个插件的source controljupyter notebookgithub 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 (可以断点调试):
这里如果add configuration,可以选择多种。比如选with arguments
launch.json的常见写法:
然后修改launch.json,加上cwd这一行,改成自己的路径:
如果选的是current file的话,需要切换回要跑的脚本之后,再运行,因为默认运行的是current file,如果还停留在json这个文件的话他跑的就是json,当然就会报错。
之后,顶部输入框会让你输入参数,有就输入,没有就直接回车就行。
还可以配置cuda或DISPLAY等参数写定参数:(display详见后面的x11)
断点调试
如果打了断点,就是调试,上方是一些操作按钮:
左边会显示一些变量之类的情况:
但是可能很难找到自己想看的变量,在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等格式。
git 不知道哪个插件的source control
这里可以进行各种git操作,可以直观展示修改了哪些文件,左右栏对比:
ssh公钥配置push权限:
看看~/目录下是否有.ssh 目录。
如果有.ssh目录,再看看这个目录下有没有id_rsa和id_rsa.pub这两个文件。
如果没有,打开Shell(Windows下打开Git Bash),创建SSH Key:
$ ssh-keygen -t rsa -C “youremail@example.com”
一路回车
登陆GitHub,打开“Account settings”,“SSH Keys”页面:
然后,点“Add SSH Key”,填上任意Title,在Key文本框里粘贴id_rsa.pub文件的内容
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,
一:装插件:vscode中安装下面两个插件(都要装!!刚开始只安装了第一个带SSH,一直不成功,后来又安装了下一个就行了)
二:本地安装并运行Xming,
安装好XMing之后,本地运行Xlaunch,一路默认下一步,直到最后一步选No access control,亲测不选不行
三:配置DISPLAY参数
DISPLAY参数内容:在以下内容中选择测试,建议直接选第一条
export DISPLAY=“你本地windows主机的ip地址:0.0” # 这个ip地址可以在本地主机中用ipconfig命令查看export DISPLAY=“远程主机的id:10.0” # 这个id就是,temrinal开头显示username@XXX 里面的XXX (这一条可能需要连上mobaxterm才行)export DISPLAY=“localhost:10.0” # 网上都是这样说,但这条我用着真的不行 DISPLAY参数怎么配置:
首先建议在~/.bashrc的最后加上上面的export DISPLAY=“”的命令,然后source ~/.bashrc在调试运行的launch.json中也可以写上:
亲测不需要的步骤,但保存备用:
在本地的Xming安装路径中修改X0.hosts (在localhost下面一行添加远程服务器的ip)C:/Users/username/.ssh.config 文件中,在对应的远程主机中添加:
这个文件点这里可以打开
ForwardX11 yesForwardX11Trusted yesForwardAgent yes 远程主机中,确保ssh的配置文件 /etc/ssh/sshd_config中X11相关选项的正确性()
参考:
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
声明
本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。