vscode远程ssh隧道连接linux服务器并配置conda环境调试python过程【保姆级教程】

2023-11-19

引言:为了彻底摆脱无界面不支持调试的xshell,vscode是一款强大的神器,通过与远程服务器建立连接,可以做到远程debug和开发环境的搭建,非常好用。

前期准备:

vscode一枚

远程服务器用户名、IP、密码

1 本地vscode下载拓展:remote ssh

2 装完拓展后本地多个图标,如下图所示:

当然,初始状态不是这样(因为我已经配置好了哈),你需要点击“+”,然后在框框中输入用户名和服务器IP地址

 3点击“+”,输入你的账号用户名和服务器IP

 

按下回车,选择一个config配置文件,这里我就选择默认了哈(第一个):

这个时候会弹出相关config配置文件,在这里,你可以进行删除、添加等操作(界面上不支持删除哦),另外,左侧的服务器列表也会显示你刚刚创建的主机:

此时,点击右边的小图标,你可以选择新建窗口访问或此窗口访问,随意点击:

4 正常情况下,你接下来需要输入密码

 输入即可进入。。。链接成功左侧列表会有一个绿色的小对勾

 

如果出现无法识别主机类别的时候,需要手动选择linux、windows或者mac。如果服务器IP写错了,那么你会获得下面的提示:

此时,你可以选择More Actions进入config配置文件进行修改【open SSH Configuration File】:

 

那个文件一看就知道咋改,我就不细讲了。HOST 就是名字,自己爱取啥取啥,HostName就是IP地址,User Name就是给你分配的账号名,密码在此处是没办法填写的。

5 免密登陆:

参考这篇文章      vscode实现ssh免密登陆

6 安装拓展

很遗憾,你的本地拓展在远程是无法使用的,那也就是你必须为你的远端配置拓展,以python拓展为例,你可以在拓展界面点击“在SSH:xxx安装”来实现:

如果一直提示安装超过十分钟,现在立刻马上关掉你的VPN【外网VPN】,然后删除远程服务器中.vscode-server文件,然后重启vscode,进行安装,如果还不行,那没办法,你点子背。

 7 远程服务器安装环境

这一步不是必须的,你也可以就用主环境,随你便。

我建议你按照miniconda,然后再配置环境,具体操作稍微搜索一大堆哈,命令就可以在vscode终端输入。【菜单栏-终端-新终端-$xxxx(命令)】

如果遇到创建环境失败【HTTP 000】的情况,可以尝试修改或删除".condarc"文件,然后使用命令构建清华镜像源链接加速。这里甩给你一个链接做参考【对了,关掉VPN】:

HTTP 000 conda创建新环境失败

8 选择解释器并进入环境

 ctrl + shift + P 输入python:select interpreter选择解释器

自己随意哈,我创建了一个mindspore环境“msp”,就选择的这个。如图,以/usr/bin开头的都是linux自带的主环境,以./miniconda3开头的都是你刚刚创建的环境,其中‘miniconda3’【第二个环境】就是miniconda的base环境

9 快乐开发:

完成以上操作之后,你在vscode上开发就像在本地电脑上一个样,debug也非常方便,对于库和函数的使用跳转也非常简明:

 

 

 

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

vscode远程ssh隧道连接linux服务器并配置conda环境调试python过程【保姆级教程】 的相关文章

  • 判断线程是否已经启动

    如何判断Python线程是否已经启动 有一个方法is alive 但这是真的before and while一个线程正在运行 你可以看看ident领域的Thread实例 这Python 2 7 线程文档 http docs python o
  • Python3+Kivy+Plyer 推送通知图标问题

    我在使用 Android 的简单通知测试应用程序时遇到了一个奇怪的错误 错误 python AttributeError type object notification org notificator R drawable has no
  • 在 python 的 Visual Studio 工具中按下 ctrl+F5 后,控制台窗口立即关闭

    我已经安装了 Visual Studio 的 Python 工具 但在控制台窗口中看不到输出 就像我在 Visual Studio 中运行 C 控制台应用程序时按以下快捷键时看到的输出一样 F5 开始调试程序并关闭 C 和 Python 中
  • 如何有条件地组合两个相同形状的 numpy 数组

    这听起来很简单 但我想我把它想得太复杂了 我想创建一个数组 其元素是从两个形状相同的源数组生成的 具体取决于源数组中哪个元素更大 为了显示 import numpy as np array1 np array 2 3 0 array2 np
  • 蟒蛇 |如何将元素随机添加到列表中

    有没有一种方法可以将元素随机添加到列表中 内置函数 ex def random append lst a lst append b lst append c lst append d lst append e return print ls
  • 返回不包括指定键的字典副本

    我想创建一个函数 返回字典的副本 不包括列表中指定的键 考虑这本词典 my dict keyA 1 keyB 2 keyC 3 致电without keys my dict keyB keyC 应该返回 keyA 1 我想用一行简洁的字典理
  • 以编程方式将列名称添加到 numpy ndarray

    我正在尝试将列名称添加到 numpy ndarray 然后按名称选择列 但这不起作用 我无法判断问题是在添加名称时出现 还是在稍后尝试调用它们时出现 这是我的代码 data np genfromtxt csv file delimiter
  • 在 Windows 上将 Word2vec 与 Tensorflow 结合使用

    In 本教程文件 https github com tensorflow models blob master tutorials embedding word2vec py L45通过 Tensorflow 找到以下行 第 45 行 来加
  • Python 相当于 Bit Twiddling Hacks 中的 C 代码?

    我有一个位计数方法 我正在尝试尽可能快地实现 我想尝试下面的算法位摆弄黑客 http graphics stanford edu seander bithacks html CountBitsSetParallel 但我不知道 C 什么是
  • 熊猫记忆

    我有冗长的计算 我重复了很多次 因此 我想使用记忆 诸如jug http packages python org Jug and joblib http packages python org joblib memory html 与Pan
  • 如何检查包含 NaN 的列表 [关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 在我的 for 循环中 我的代码生成一个如下所示的列表 list 0 0 0 0 sum 0 0 0 0 该循环生成所有其他数字向量 但它也
  • 如何将同步函数包装在异步协程中?

    我在用着aiohttp https github com aio libs aiohttp构建一个 API 服务器 将 TCP 请求发送到单独的服务器 发送 TCP 请求的模块是同步的 对于我来说是一个黑匣子 所以我的问题是这些请求阻塞了整
  • 如何使用注释和聚合在 Django 的 ORM 中执行此 GROUP BY 查询

    我真的不知道如何翻译GROUP BY and HAVING到姜戈的QuerySet annotate and QuerySet aggregate 我正在尝试将这个 SQL 查询转换为 ORM 语言 SELECT EXTRACT year
  • 别碰我的女人

    我讨厌的一件事迪斯图尔斯 http docs python org distutils 我猜他是邪恶的人 他这样做了 https github com python cpython blob 300dd552b15825abfe0e367a
  • 将具有不同大小的行的数据加载到 Numpy 数组中

    假设我有一个包含如下数据的文本文件 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 如何将它加载到 numpy 数组中 使其看起来像这样 1 2 3 4 5 0 6 7 8 0 0 0 9 1
  • Matplotlib 将颜色图 tab20 更改为三种颜色

    Matplotlib 有一些新的且非常方便的颜色图 选项卡颜色图 https matplotlib org examples color colormaps reference html 我错过的是生成像 tab20b 或 tab20c 这
  • Python time.sleep - 永不醒来

    我认为这将是那些简单的问题之一 但它让我感到困惑 停止媒体 我是对的 找到了解决方案 查看答案 我正在使用 Python 的单元测试框架来测试多线程应用程序 很好而且很直接 我有 5 个左右的工作线程监视一个公共队列 以及一个为它们制作工作
  • Scikit Learn - K-Means - 肘部 - 标准

    今天我想学习一些关于 K means 的知识 我已经了解该算法并且知道它是如何工作的 现在我正在寻找正确的 k 我发现肘部准则作为检测正确的 k 的方法 但我不明白如何将它与 scikit learn 一起使用 在 scikit learn
  • Pandas DataFrame:如何计算组中第一行和最后一行的差异?

    这是我的熊猫数据框 import pandas as pd import numpy as np data column1 338 519 871 1731 2693 2963 3379 3789 3910 4109 4307 4800 4
  • Python“self”关键字[重复]

    这个问题在这里已经有答案了 我是 Python 新手 通常使用 C 最近几天开始使用它 在类中 是否需要在对该类的数据成员和方法的任何调用前添加前缀 因此 如果我在该类中调用方法或从该类获取值 我需要使用self method or sel

随机推荐

  • 【EasyExcel】 模板填充批量导出,多文件以zip压缩包格式导出

    使用 阿里巴巴的 EasyExcel 填充 excel模板导出 需要支持批量操作 即一个模板循环导出多份 在网上找了下其他大佬们的做法 没有找到想要的 很多都是要先生成excel文件 再压缩导出 但我不想这样做 想直接通过文件流的方式 直接
  • 【计算机网络】湖科大微课堂笔记 p50-53 路由选择协议概述、路由信息协议RIP、开放最短路径优先OSPF、边界网关协议BGP的基本工作原理

    文章目录 路由选择协议概述 小结 路由信息协议RIP的基本工作原理 小结 一些例题 开放最短路径优先OSPF的基本工作原理 小结 边界网关协议BGP的基本工作原理 小结 一些例题 路由选择协议概述 因特网采用分层次的路由选择协议 域间路由选
  • 二叉搜索树(BST的理论剖析+代码实现)

    二叉搜索树 BST树 文章目录 二叉搜索树 BST树 1 二叉搜索树的概念 2 二叉搜索树的结构定义 2 1 二叉搜索树结点模板的定义 2 2 二叉搜索树类模板的定义 3 二叉搜索树的效率 4 二叉搜索树的默认成员函数实现 4 1 BST的
  • MapReduce作业状态一直为ACCEPTED解决过程

    toc 今天在测试Hadoop文件压缩功能时 在之前本地搭建的Hadoop集群上提交了一个MapReduce作业 但是提交后发现一直卡在那不动 18 07 20 17 21 50 WARN util NativeCodeLoader Una
  • Swagget技术·SpringBoot继承Swagger框架详解!

    文章目录 一 Swagger简介 二 SpringBoot集成Swagger 三 配置Swagger 1 Swagger实例Bean是Docket 所以通过配置Docket实例来配置Swaggger 2 可以通过apiInfo 属性配置文档
  • 基于电流采样运放的DCDC电源输出线损补偿电路的详细推导计算

    基于电流采样运放的DCDC电源输出线损补偿电路的详细推导计算 作者 TI 工程师 Kevin Zhang 当DCDC电源输出需要经过一根长线缆才能到达负载时 由于线缆的阻抗产生压降 会导致负载端电压小于实际DCDC输出电压 为保证负载端电压
  • Markdown基本语法

    Markdown基本语法 一 Markdown了解 二 基本语法 1 各级标题的写法 2 段落 3 字体样式 4 分隔线 5 下划线 6 脚注 7 列表 8 代码块 9 引用 10 图片插入 11 链接 12 表格 三 高级技巧 1 HTM
  • Air Video

    http baike baidu com view 8552809 htm 1 百度首页 登录注册 新闻网页贴吧知道MP3图片视频地图百科文库 帮助 首页 自然 文化 地理 历史 生活 社会 艺术 人物 经济 科技 体育 图片 数字博物馆
  • 翠竹林 Opencv+C++之人脸识别

    最近一直在忙课程 老师让我看看他的论文也没放在心上 总算闲下来 看了他在人脸识别方面的相关论文 拿出一篇放在博客上跟大家共同分析下 在看以下内容前 首先要阅读下徐勇老师的这篇论文 A Two Phase Test Sample Sparse
  • Python Timer定时器

    Timer是在threading模块下的 Thread类的派生类 它用于在指定时间后调用一个方法 Timer的构造方法 Timer interval func args kwargs interval 用于设置等待时间 func 要执行的函
  • node-npm 设置淘宝镜像

    1 安装 cnpm 淘宝镜像 npm install g cnpm registry https registry npm taobao org 2 将npm设置为淘宝镜像 npm config set registry https reg
  • swift项目桥接通过cocoapods pod下来的第三方oc文件引入不成功

    最近想试着开始写学着swift项目了 然后就在用cocoapods pod下来的第三方框架的时候出现了问题 先以为是自己创建桥接文件后 配置出错了 但是网上的那些文章都还是能把桥接文件处理好 言归正传 先上图 pod的文件和桥接header
  • 你与小程序开发的距离有多远?

    你与小程序开发的距离有多远 2017年1月9日凌晨 小程序正式发布 对焦10年前iPhone的发布时间 产品之神张小龙显然是想让这一天具有十分重要的历史意义 小程序发布之后 它终于揭开了最终面目 我们不得不承认 这一天 必定是一个新时代的开
  • Java的多态

    一 多态的概念 多态性是指同一操作或方法可以在不同的对象上具有不同的行为 它允许我们通过使用基类或接口类型的引用变量来调用子类或实现类的方法 二 多态的作用 多态性是面向对象编程中的一个重要概念 它可以让我们以一种统一的方式处理不同类型的对
  • Eureka初启动报错:{@org.springframework.beans.factory.annotation.Qualifier(value=httpTraceFilter)}

    学习Eureka时启动报错 之前写服务者消费者接口未报错 到启动Eureka时才发现有误 启动Eureka时报错 信息提示是 Dependency annotations org springframework beans factory
  • 合并所有重叠的区间,并返回 一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间

    以数组 intervals 表示若干个区间的集合 其中单个区间为 intervals i starti endi 请你合并所有重叠的区间 并返回 一个不重叠的区间数组 该数组需恰好覆盖输入中的所有区间 示例 输入 intervals 1 3
  • nginx 反向代理到另一个nginx并在另一个ngixn上面做转发

    目录 一 背景 二 步骤 三 问题总结 一 背景 近期部署项目时遇到一个问题 由阿里云解析到一个公网iP 由该公网ip的nginx进行转发 但转发时 该项目为前后端分离 需要解析到远程服务器的xxx目录 这通过一个nginx转发不好解决 通
  • Linux 开发环境搭建与使用——SlickEdit 的安装与配置

    SlickEdit 的介绍 vim 是公认很好用很完美 但是对新手来说 上手毕竟不是很容易 Windows 下程序员很多都很喜欢Source Insight 这个工具来看代码 各种语法高亮看着很舒服 那在 Linux 平台下 有没有媲美 S
  • ICPC-TOOLs resolver滚榜单工具使用指南

    0 引言 上周突然临危受命 学校ACM社团要举办校内迎新赛 想要使用滚榜功能让揭晓结果变得更加刺激 奈何本人不打ACM 一开始连滚榜都不知道 苦笑 jpg 不过还是跌跌撞撞把功能实现了 介于网络上这方面的教程实在是凤毛麟角 我就把自己的经验
  • vscode远程ssh隧道连接linux服务器并配置conda环境调试python过程【保姆级教程】

    引言 为了彻底摆脱无界面不支持调试的xshell vscode是一款强大的神器 通过与远程服务器建立连接 可以做到远程debug和开发环境的搭建 非常好用 前期准备 vscode一枚 远程服务器用户名 IP 密码 1 本地vscode下载拓