网站永久免费建站/沈阳黄页88企业名录
Visual Code、PyCharm专业版,本地和远程交互。
远程连接需要用到SSH协议的技术,常用的代码编辑器vscode 和 pycharm都有此类功能。社区版的pycharm是免费的,但是社区版不支持ssh连接服务器,只有专业版才可以,需要破解或者学生身份申请专业版,下面记录一下自己所学,方便重新配置环境。
VsCode远程连接:
在基于前面环境配置好的前提下,直接官网下载最新的vs code,不需要配置环境变量。
1、然后你需要下几个插件:
打开vscode,找到最左边的
下一步是,分别搜索如下插件,并点击install,插件如下:
python(写python必备),
jupyter(在vs code中显示jupyter notebook而无需在网页启动,很高级),
remote development(远程连接,会附带一系列其他的远程插件),
Anaconda Extension Pack(我也不知道,但是你用anaconda的python肯定要的),
vs code -icons(文件图标会显示相应的文件类型,方便操作),另外写网页的话可以还要下Live Server,Open in defalut Brower,HTML CSS Support,auto rename tag,然后还有个插件 resource monitor,可以在vs code左下角看到cpu 和内存占用情况:
这里说一下jupyter插件:
只需要下jupyter插件就可以,然后你创建.ipynb文件就是jupyter编辑器了,在编辑这一方面,显然是比在浏览器中用jupyter更友好。
选择运行代码的虚拟环境:
按F1
在上面的搜索框搜索python解释器,选择你的虚拟环境下的python.exe。再在Vs code中间最上面输入python selected找到带你的虚拟环境名的python.exe解释器,确认运行环境,然后你就可以在本地打开某个文件夹创建py文件写python代码运行了,如果不进行远程连接,这里vscode配置就结束了。
vsocde远程连接配置
上面安装的vscode插件中,下了个remote development插件就会附带自动下一堆的插件。可以在自己的插件中,看看有没有如下的这些,没有就自己手动点击下一下:
,下好了之后左边会多一个远程图标:
然后你点击一下、就到了下面这里,看到下面这个ssh的右边设置,点击它
然后让你输入,ssh 进行连接命令,其中ip也可以域名:
ssh username@ip
(这个输入提示中的-A ,是代理本地拥有的私钥的意思。你如果把公钥放到ssh服务器的authorized_keys文件中,那么任何本机只要拥有你的私钥,然后再加上知道你放的服务器的用户名和地址,就能直接连接那台ssh服务器。
这里代理之后,让连接的服务器拥有更大权限,它不仅被我连,还能拥有连接 我本地机在其他放了公钥的机器 的连接权力(可以获取的本地的所有私钥)。如果连接的服务器被攻击,这对其他服务器还是有隐患的,毕竟代理之后,我远程的服务器访问其他服务器也不需要密码了)
点击,配置用户名信息
写入机器的信息:(这里需要说明,不加 IdentityFile 这一行是可以的,就可以直接用了。连接的时候会要求你输入登录密码,输入即可远程访问服务器文件了。
但是缺点是很频繁的输入密码,有时候经常断开很麻烦,于是需要将本地机器的ssh的公钥(也即id_rsa.pub中的那行内容。windows一般路径是在C:\Users\用户名.ssh\id_rsa.pub)加入到服务器的~/.ssh/authorized_keys文件中,如果服务器主目录下没有.ssh文件的话,你自己在主目录下mkdir .ssh创建一个.ssh文件夹,chmod 700 .ssh给他赋予权限,再vi .ssh/authorized_keys创建并编辑文件,将id_rsa.pub中的那行内容添加进去,保存退出即可。
然后也会有两个问题,有可能服务器是刚装的机器,没有ssh服务,下载ssh命令sudo apt-get install openssh-server,开启ssh服务 sudo /etc/init.d/ssh start;另外一个问题是本地的windows没有ssh,解决方法是去git的官网下载windows的git,里面有支持ssh的底层服务,下载最后你只需要在cmd中或者git的shell中执行命令:ssh-keygen -t rsa -b 4096 -C “your_email@example.com”,就能在C盘的ssh目录下,生成一对密钥了,找到其中的pub公钥添加到服务器的authorized_keys文件中即可。
更过的密钥生成的信息可以看这篇文章:各平台密钥生成
按ctrl + s保存即可。
然后左边远程连接,就会加载你的服务器信息了,或者关掉vscode重开,再点开remote图标就能显示你的机器了
点击当前页面连接,或者开启新的窗口连接都可以。
然后把欢迎页面关掉,左上角File->openfolder
就能打开你在服务器中git clone 下来的代码了
右下角可以选择python运行环境
或者按F1也会跳出来一些操作选项,你可以点击选择解释器
如果你发现右下角没有选择,或者按F1也没有Select Interpret选项,就去看看插件,有没有下载python插件,插件的下载和使用是本地和远程分开的,下载并开启插件在远程服务中的使用即可。
这就可以写代码,改代码,跑代码了,然后有时候输出控制台会消失,其实没消失,只是隐藏在最下面,将它拉上来就可以了。
另外,再记录一下debug,我好像不太喜欢debug,一直都是习惯手动print()
这是远程调试的一篇论文,供参考。
接下来说一下Vscode中的debug几个按钮,记录一下:
开启debug
注意的是上面的那几个调试按键
然后注意这几个:
第一个播放一样的continue是到下一个断点,
第二个旋转一样的step over是一行一行的走,包括第一层函数,但是函数之内的函数他就不会走了,除非你用第三个step in,提前在第一层函数运行前点他,然后在第一层函数里面一直点3,step in就会进到嵌套函数里面,真正的做到顺序运行,
然后第四个step over就是跳过一个函数,比如a函数里面有执行b ,c函数,他就跳过b,到c,然后再从c到a外面那个主函数,每点一下就是执行一个函数的量。
PyCharm远程连接开发:
PyCharm远程连接开发:
下面来说说在拥有GPU的情况下,怎么在本地连接服务器:介于pycharm 社区版本不提供ssh连接。
1、科学软件
https://mp.weixin.qq.com/s/V97XrfH0_vj4VIfcSb9S7Q,目前有效。
2、支持正版,还有一个办法是在jetbrains官网去要一个学生教育包,高校学生老师可以,但是要审核,学生一年申请一次,申请成功jetbrains的所有软件即可使用过。需要学生证照片。方法是直接进入这里:
jetbrains账号申请
但是需要注意!你得先在这个网站注册jetbrains账号,但是不要用自己的学生邮箱,你在申请的时候再填自己的学生邮箱去认证审核,表单选择官方文件,审核大概一周左右。
然后上面的电子邮箱填自己的学生电子邮箱,带edu.cn的那种,证件我上传的是饭卡的照片。
然后大概一个星期,就可以在学生邮箱收到:
Hi XX,
Congratulations! Your JetBrains Educational Pack has been confirmed.
Please link your free license to a new or an existing JetBrains Account. You will need to use this account whenever you want to access JetBrains tools.
Get started by learning basic shortcuts and essential features from right inside IntelliJ IDEA and other JetBrains IDEs with the IDE Features Trainer plugin.
In addition to your Educational Pack, we provide all new users with an extended 3-month free trial at JetBrains Academy, our hands-on platform for learning to program. Find out more details and start your extended trial.
If you have any questions, please email us and we will be glad to help.
Kind Regards,
The JetBrains team
www.jetbrains.com
The Drive to Develop
然后应该是用邮箱即可使用所有jetbrains的产品。
————————————————————————————————
pycharm专业版 下好之后,先不谈远程。讲在本地创建项目运行。
要在pycharm中导入先新建项目,才可以在pycharm中方便的编码
选择编译环境为conda中的那个你创建好的
如果没有的话,你就需要去anaconda目录中找到evns目录下的那个环境中的python路径,选中它,如下图
也可以在pycharm的控制台写代码(可能比较方便观察每一步的变量值变化):
对于已经打开的项目,可以在file–setting–python interpreter里面找到并更换python解释器。
然后远程连接方法是tool - deploment-configuration-±sptf-填写服务器信息:
上面写了123步骤的图,这会在pycahrm的任何项目使用中,都默认保存了一个ssh连接选项供你选择。
这上面的另外两张图就是创建一个远程文件管理项目,然后将这个ssh连接包含进去了,因为同步毕竟是基于两台主机的ssh,然后设置这个远程管理项目需要映射文件夹,这里面的映射是为了方便文件下载与上传的同步的。我个人觉得尽量本地这边的文件夹为空的,或者远程的文件夹为空比较好,就是映射的文件夹中一边空一边不空。然后绑定映射后从那边的文件夹download下来或者upload上去,然后提示会覆盖,选择yes就可以了,这样会避免歧义,而且选择yse覆盖的话,就是远程有你这边没有的文件都会备份过来。
然后刚开始,这里面只是说你可以本地或者远程改变同步代码,但是你的运行环境,还是本地的。这样做的话也就是相当于在服务器上备份了文件一样,好像意义不大。
为了使用远程的GPU资源,也就需要让远程服务器上的anaconda创建的虚拟环境中的python.exe来运行我们的代码,因为本地是无法直接调用远程主机的GPU,cpu资源的,目前还没出现那么高级的本地操作远程功能。其原理就是说本地项目这边运行前选择interpreter的时候,不用本地的虚拟环境的python.exe,而是用远程的某个虚拟环境中的python解释器,然后远程运行完之后将运行的结果远距离传输回来。
这里有一个地方很模糊,就是创建ssh远程解释器的时候,需要制定映射目录,为了避免麻烦和歧义,尽量让两边映射文件夹其跟上面设置的一样。也即这两个地方一样。
如果你没有设置远程同步文件夹,远程主机会将我的代码文件直接复制到远程某个文件夹,跟这个文件夹同步,大概是在/tmp/Pycharm…406…之类的命名,然后运行完会返回来结果。而这个/tmp/Pycharm…406是随机生成的名字。就是在你选择远程python解释器运行的的时候,他自己会服务器上创建这个文件夹。
另外,来回切换本地或者远程解释器都没问题,但是要记得自己之前创建的远程服务器名称,因为这个远程服务器绑定了哪两个文件夹,切回来的时候用错别的远程解释器,他就随机在/tmp/文件夹下生成一个目录给你同步了,这样会乱。
这其实就是一个git同步系统,只不过目前我还不了解版本控制。
这里有个自动上传设置,勾选之后。不管是创建文件同步,还是修改文件,你在本地改变的东西,都会自动推送到远程。远方同名的文件都会被更改。
远程连接同步与git类似。但是远程文件变更,你需要download下来,空文件夹不会被download下来,你download的时候记得慎重选yes,得看清楚文件夹是不是你要改变的。
而远程多余的文件夹会无条件download下来。
远程连接就记录到这里,感觉挺好用的。
相关文章:

VScode远程连接服务器,Pycharm专业版下载及远程连接(深度学习远程篇)
Visual Code、PyCharm专业版,本地和远程交互。 远程连接需要用到SSH协议的技术,常用的代码编辑器vscode 和 pycharm都有此类功能。社区版的pycharm是免费的,但是社区版不支持ssh连接服务器,只有专业版才可以,需要破解…...

Vue2和Vue3组件间通信方式汇总(3)------$bus
组件间通信方式是前端必不可少的知识点,前端开发经常会遇到组件间通信的情况,而且也是前端开发面试常问的知识点之一。接下来开始组件间通信方式第三弹------$bus,并讲讲分别在Vue2、Vue3中的表现。 Vue2Vue3组件间通信方式汇总(1)…...

PyTorch加载数据以及Tensorboard的使用
一、PyTorch加载数据初认识 Dataset:提供一种方式去获取数据及其label 如何获取每一个数据及其label 总共有多少的数据 Dataloader:为后面的网络提供不同的数据形式 数据集 在编译器中导入Dataset from torch.utils.data import Dataset 可以在jupyter中查看Dataset官方文档&…...

TensorFlow是什么
TensorFlow是什么 Tensorflow是一个Google开发的第二代机器学习系统,克服了第一代系统DistBelief仅能开发神经网络算法、难以配置、依赖Google内部硬件等局限性,应用更加广泛,并且提高了灵活性和可移植性,速度和扩展性也有了大幅…...

docker-compose 安装Sonar并集成gitlab
文章目录 1. 前置条件2. 编写docker-compose-sonar.yml文件3. 集成 gitlab4. Sonar Login with GitLab 1. 前置条件 安装docker-compose 安装docker 创建容器运行的特有网络 创建挂载目录 2. 编写docker-compose-sonar.yml文件 version: "3" services:sonar-postgre…...

支付平台在选择服务器租用时要注意什么?
如果要建设一个支付平台的话要进行服务器租用,一旦涉及到钱的方面就必须要顾虑到多方面,这样才能保证安全性,今天小编就给大家讲一讲要注意什么呢? 1、带宽:带宽是业务稳定性的直接因素,只有带宽充足,这样…...

IDEA2018升级2023,lombok插件不兼容导致get/set方法无法使用
1、问题 最近了解到一款叫CodeGeeX 的智能编程助手,想要试用一下,但是IDEA2018版本太低了,没有CodeGeeX插件,于是打算将IDEA升级到2023.2.5版本,具体升级过程略过,升级完成后,启动项目…...

企业微信服务商代开发模式获取授权企业的客户信息
服务商代开发素材: 服务商可信ip 企业微信认证 测试时不用再次创建一个企业微信,可以用当前的企业微信作为授权企业使用一、创建代开发应用模板 1,代开发模板回调URL配置 参考 注意:保存代开发应用模板时的corpId是服务商的企业…...

库存管理方法有哪些
库存管理是工作中一个离不开的话题,不管是仓管还是业务员都或多或少接触过库存管理方面的工作,例如:进货、销售、库存盘点等等这些都属于库存管理的范筹,那么库存管理方法有哪些?用哪种方法管理库存比较好,…...

数字化车间推动制造业生产创新
一、数字化车间应用场景 1:资源智能化管理 数字化车间通过搭建智能化的设备监测系统,实时采集和监控设备的运行状态和生产数据,对设备进行实时管理和维护,降低故障率和维修成本。同时,通过对生产过程中的数据采集和分…...

Linux的安装及管理程序
一、如何在linux安装卸载软件 1. 编译安装 灵活性较高 难度较大 可以安装较新的版本 2. rpm安装(redhat) linux 包安装 查软件信息:是否安装,文件列表 rpm 软件名 3. yum yum是RPM升级版本,解决rpm的弊端 安装软件 首…...

c语言-表达式求值
目录 前言一、隐式类型转换1.1 整型提升 二、算术转换三、操作符的属性四、问题表达式总结 前言 表达式求值的顺序一部分由操作符的优先级和结合性决定。 有些表达式的操作数在求值的过程中可能需要转换为其他类型 一、隐式类型转换 隐式类型转换是在编译器自动进行的类型转换…...

小型洗衣机哪个牌子质量好?口碑最好的四款小型洗衣机推荐
随着科技的快速发展,现在的人们越来越注重自己的卫生问题,不仅在吃上面会注重卫生问题,在用的上面也会更加严格要求,而衣服做为我们最贴身的东西,我们对它的要求也会更加高,所以最近这几年较火爆的无疑是内…...

springCould中的Ribbon-从小白开始【5】
目录 1.什么是Ribbo❤️❤️❤️ 2.eureka自带Ribbon ❤️❤️❤️ 3. RestTemplate❤️❤️❤️ 4.IRule❤️❤️❤️ 5.负载均衡算法❤️❤️❤️ 1.什么是Ribbo 1.Spring Cloud Ribbon是基于Netflix Ribbon实现的一套客户端,负载均衡的工具。2.主要功能是提供客户端的软件…...

持续集成交付CICD:Jira 发布流水线
目录 一、实验 1.环境 2.GitLab 查看项目 3.Jira 远程触发 Jenkins 实现合并 GitLab 分支 4.K8S master节点操作 5.Jira 发布流水线 一、实验 1.环境 (1)主机 表1 主机 主机架构版本IP备注master1K8S master节点1.20.6192.168.204.180 jenkins…...

JuiceSSH结合内网穿透实现公网远程访问本地Linux虚拟机
文章目录 1. Linux安装cpolar2. 创建公网SSH连接地址3. JuiceSSH公网远程连接4. 固定连接SSH公网地址5. SSH固定地址连接测试 处于内网的虚拟机如何被外网访问呢?如何手机就能访问虚拟机呢? cpolarJuiceSSH 实现手机端远程连接Linux虚拟机(内网穿透,手机端连接Linux虚拟机) …...

使用 pytest.ini 文件控制输出 log 日志
一、前置说明 pytest.ini 文件中可以配置参数来控制 pytest 的运行行为,其存放路径要求与 conftest.py 一样。 项目根目录project_root/ ├── pytest.ini ├── tests/ │ └── test_demo.py以test开头的测试子目录project_root/ ├── tests/ │ ├── pytest.in…...

【Spring】SpringBoot 配置文件
文章目录 什么是配置文件SpringBoot配置文件配置文件快速入手配置文件的格式properties 配置文件说明properties 基本语法读取配置文件信息properties 配置格式缺点 yml 配置文件说明yml 基本语法使用 yml 连接数据库 yml 使用进阶yml 配置不同数据类型配置对象配置集合配置Map…...

Koordinator 支持 K8s 与 YARN 混部,小红书在离线混部实践分享
作者:索增增(小红书)、宋泽辉(小红书)、张佐玮(阿里云) 背景介绍 Koordinator 是一个开源项目,基于阿里巴巴在容器调度领域多年累积的经验孵化诞生,目前已经支持了 K8s…...

网游逆向分析与插件开发-游戏反调试功能的实现-项目需求与需求拆解
上一个专栏结束位置:网游逆向分析与插件开发-代码保护壳的优化-修改随机基址为固定基址-CSDN博客 上一个专栏是做了一个壳有了一定的保护,但是保护还是不够,最大的保护是根上把问题解决了,就是我不允许你对我进行调试,…...

阶段七-GitEE
Git:版本控制软件 Git的优点 1.1 协同修改 多人并行不悖的修改服务器端的同一个文件。 1.2 数据备份 不仅保存目录和文件的当前状态,还能够保存每一个提交过的历史状态。 1.3 版本管理 在保存每一个版本的文件信息的时候要做到不保存重复数据&…...

Redis小记(1)
目录 1.Redis和Mysql的区别 2.Redis常用命令 1.Redis和Mysql的区别 a:mysql和redis的存储方式不同 mysql是关系型数据库,用表来进行存储数据。 redis是通过键值对来存储数据,key使用string来标识,value可以是各种不同的数据结构。 b:mys…...

Flutter windows 环境配置
Flutter windows 环境配置 从零开始,演示flutter环境配置到启动项目,同时支持 vscode 和 android studio 目录 Flutter windows 环境配置一、环境配置1. Flutter SDK2. Android Studio3. JDK4. 拓展安装5. Visual Studio 2022二、项目创建和启动1. vsco…...

odoo17核心概念view5——ir_ui_view.py
这是view系列的第5篇文章,介绍一下view对应的后端文件ir_ui_view.py,它是base模块下的一个文件 位置:odoo\addons\base\models\ir_ui_view.py 该文件一共定义了三个模型 1.1 ir.ui.view.custom 查询数据库这个表是空的,从名字看…...

截断整型提升算数转换
文章目录 🚀前言🚀截断🚀整型提升✈️整型提升是怎样的 🚀算术转换 🚀前言 大家好啊!这里阿辉补一下前面操作符遗漏的地方——截断、整型提升和算数转换 看这一篇要先会前面阿辉讲的数据的存储否则可能看不…...

阿里云 ECS Docker、Docker Compose安装
https://help.aliyun.com/document_detail/51853.html https://docs.docker.com/compose/install/ Centos https://blog.csdn.net/Alen_xiaoxin/article/details/104850553 systemctl enable dockerdocker-compose安装 https://blog.csdn.net/qq465084127/article/details/…...

LeetCode——1276. 不浪费原料的汉堡制作方案
通过万岁!!! 题目,给你两个数tomatoSlices和cheeseSlices,然后每制作一个巨无霸汉堡则消耗4个tomatoSlices和1和cheeseSlices,每制作一个小皇堡则需要消耗2个tomatoSlices和1和cheeseSlices。问给你这两个…...

隆道吴树贵:生成式人工智能在招标采购中的应用
12月22日,由中国招标投标协会主办的招标采购数字发展大会在北京召开,北京隆道网络科技有限公司总裁吴树贵受邀出席大会,并在“招标采购数字化交易创新成果”专题会议上发言,探讨生成式人工智能如何在招标采购业务中落地应用。 本次…...

docker搭建kali及安装oneforall
前期docker的安装这里就不用多说了,直接看后面的代码 安装oneforall 1.安装git和pip3 sudo apt update sudo apt install git python3-pip -y2.克隆项目 git clone https://gitee.com/shmilylty/OneForAll.git3.安装相关依赖 cd OneForAll/ sudo apt install pyt…...

【MySQL】数据库之事务
目录 一、什么是事务 二、事务的ACID是什么? 三、有哪些典型的不一致性问题? 第一种:脏读 第二种:不可重复读 第三种:幻读 第四种:丢失更新 四、隔离级别有哪些? (1…...