转载:https://amos-x.com/index.php/amos/archives/pycharm-remote/

前言

远程开发什么意思?

远程开发就是用本地的个人电脑进行代码编写开发,但是代码运行和调试则是在远程服务器上。

这样做有什么好处?

这样可以避免本地环境对代码的影响,直接在服务器上开发,则可以更好的确保代码运行正常。就不受本地电脑配置的影响,避免应代码或服务吃太多资源导致本地电脑运行缓慢。

那怎么进行远程开发呢。下面就进行详细介绍。

 

正文

远程开发的前提条件,首先是需要有远程端,也就是远程服务器,这里我是centos7服务器。

首先,在Pycharm中创建或打开一个本地项目,要想远程开发,首先要将本地代码同步到远程服务器上。

配置远程服务器

添加了一个软件sftp的连接,也就是ssh的连接,这里不要️Visible only for this project。然后在root path 指定一个开发的目录即可。

 

连接远程,创建Python虚拟环境

在远程开发时,一般你会有一台开发机,很多项目都会在这个开发机上进行开发,那么自然就会用到虚拟环境来区分各个项目的环境。

不连接Python虚拟环境的,请看《Python 虚拟环境》

如上就可以打开一个远程的ssh命令行,就可以直接在pycharm中操作远程服务器。

# 然后在远程服务器上,创建项目目录和虚拟环境,项目名为ops_order_system
$ mkdir -p /data/amoswang/ops_order_system
$ cd /data/amoswang/ops_order_system
$ virtualenv venv

创建了虚拟环境后,这个虚拟环境就是项目在这个远程服务器上运行的python解释器。下面就需要在本地pycharm中新增一个解释器来指定为远程的这个venv虚拟环境。

 

设置远程python解释器

进入设置:

新增一个解释器,然后选择刚才上面设置的远程服务端

如上,这里需要选择上面创建的虚拟环境中的python作为python解释器,然后还要设置文件同步的位置,设置为上面我们创建的项目文件夹。这里️自动上传更新至远程服务器,这里也可以选择不自动更新上传。则可以如下,右键手动进行上传:

如上,在配置完了python解释器后,选择应用此解释器后,如果勾选了自动上传,那么就会开始自动上传项目到远程服务器,待文件上传完成,远程开发的设置就完成了。

 

简单使用介绍

在设置了远程开发的所有配置后,创建的虚拟环境默认是没有什么第三方包的,这时候就要安装,安装可以通过pycharm的配置中进行安装:

也可以通过ssh连接,开一个远程的ssh命令窗口,然后进入虚拟环境来使用pip进行安装,也推荐此中办法,更灵活,比如:

在配置了远程开发后,直接在本地运行python文件,会使用远程的服务器上虚拟环境的python解释器进行运行,所以就可以当成本地开发一样就行开发调试运行。这样就运行服务等就不会太吃本地PC资源,也不会受本地环境的影响。

而且,除了能同步本地文件的更新到远程上,也可以下载远程上的变成到本地,比如你程序生成的文件,如日志,就可以从远程上下载同步到本地中。手动下载如下:

pycharm之远程开发的更多相关文章

  1. 使用pycharm进行远程开发部署调试设置 与 远程部署调试是否必须使用远程主机的解释器?

    远程开发部署调试目的: 配置pycharm远程部署调试主要用于本地代码与远程服务器上的代码进行同步,使得本地代码经过修改后,可以很容易的同步到远程服务器上.同时设置pycharm的解释器为远程服务器的 ...

  2. PyCharm进行远程开发和调试linux服务器

    简介: 或许我也应该迁移到linux环境去开发. 最近写的一些小东西,在wnidows上开发,在windows上调试,都很正常.可是一旦放进linux服务器,就歇菜了. 那么我们有什么办法处理这个wi ...

  3. Flask15 远程开发环境搭建、安装虚拟机、导入镜像文件、创建开发环境、pycharm和远程开发环境协同工作

    1 安装VM虚拟机 待更新... 2 导入镜像文件 待更新... 3 启动虚拟机 4 远程连接虚拟机 4.1 安装xShell软件 待更新... 4.2 创建一个新的连接 4.2.1 在虚拟机中获取虚 ...

  4. PyCharm远程开发和调试

    PyCharm进行远程开发 1.背景 在Windows开发Python或Web应用程序,但是它们最后需要在linux上面来运行 2.解决办法 2.1 使用PyCharm内置支持的Vagrant 2.2 ...

  5. Pycharm连接远程服务器并保持文件夹同步

    pycharm版本2021 服务器版本 Ubuntu 18 1.连接远程服务器 xxx这部省略了,因为之前就已经连接上了hh,后面用到再补充. 2.保持文件夹同步 1.首先在本地(windows环境创 ...

  6. pycharm安装,svn使用,远程开发调试,接口测试,连接服务器

    磨刀不误砍柴工,配置完美的编辑器,在开发时,能帮助我们节约大量的时间成本,从而是我们的精力放在业务逻辑实现上面! 接下来将介绍 使用pyhcarm如何使用svn,远程开发调试,接口测试,已经连接远程服 ...

  7. Pycharm中进行Python远程开发

    http://blog.csdn.net/pipisorry/article/details/52269952 PyCharm提供两种远程调试(Remote Debugging)的方式:    配置远 ...

  8. Pycharm 连接Linux 远程开发

    Pycharm 连接Linux 远程开发 在Liunx上安装python3.6(Ubuntu16) 下载Python-3.6.4.tgz 解压 tar -xzvf Python-3.6.4.tgz 进 ...

  9. PyCharm远程开发配置及一些问题的解决方案

    PyCharm远程开发配置 具体请参考:https://www.jianshu.com/p/79df9ac88e96 Tips:必须要安装PyCharm专业版 实践过程中遇到的问题 背景 因项目需要, ...

  10. 本地ubuntu下pycharm 如何利用远程开发环境时显示图片

    最近使用pycharm远程开发tensorflow,每次在想显示图像时,苦于不知怎么操作,就通过保存后再看结果,使得调试很不方便.今天打算解决这个问题,收获也是很多啊. 我首先参考了这两篇博客: ht ...

随机推荐

  1. GANF: 用于多时间序列异常检测的图增广归一化流《GRAPH-AUGMENTED NORMALIZING FLOWS FOR ANOMALY DETECTION OF MULTIPLE TIME SERIES》(异常检测、多时间序列、DAG、贝叶斯网络、归一化流)

    今天是2022年7月12日,差不多小半个月没看论文了,因为模型一直运行不起来+系统搭建的一塌糊涂,今天干脆摆烂,本咸鱼要去看新的论文了(逃避旧工作,bushi). 对了,我们放暑假了,可是我没放暑假. ...

  2. JavaScript – Rest Parameters & Spread Operator

    介绍 Rest 和 Spread 的共同点是语法都是 ... (点点点). 但它们的概念是相反的. 看例子体会: Rest Parameters 参考: 阮一峰 – rest 参数 rest para ...

  3. OpenSSL证书通过Subject Alternative Name扩展字段扩展证书支持的域名

    1.概述 1.1 什么是Subject Alternative Name(证书主体别名) SAN(Subject Alternative Name) 是 SSL 标准 x509 中定义的一个扩展.它允 ...

  4. Windows系统之“关闭windows 文件夹分组”

    不知道怎么就按出来了 文件夹分组 ,也不知道怎么关闭,别扭了好久 解决办法: 右键点击文件夹空白处,选择 "分组依据" --> 然后选择 "无"

  5. 活动预告 | 中国数据库联盟(ACDU)中国行第三站定档成都,邀您探讨数据库前沿技术

    数据库技术一直是信息时代中不可或缺的核心组成部分,随着信息量的爆炸式增长和数据的多样化,其重要性愈发凸显.作为中国数据库联盟(ACDU)的品牌活动之一,[ACDU 中国行]在线下汇集数据库领域的行业知 ...

  6. Oracle、MySQL等数据库故障处理优质文章分享 | 10月汇总

    墨天轮社区于9月起持续举办[聊聊故障处理那些事儿]DBA专题征文活动,每月进行评优发奖,鼓励大家记录工作中遇到的数据库故障处理过程,不仅用于自我复盘与分析,同时也能帮助其他的同仁们避坑. 上月为大家梳 ...

  7. python中队列deque的使用

    队列,堆栈是程序开发中常用的两种数据存储模型.python中队列怎么运用呢?以下内容介绍了队列的使用和队列的函数. from collections import deque q = deque() ...

  8. 洛谷P1644跳马问题

    跳马问题 题目链接 题目背景 在爱与愁的故事第一弹第三章出来前先练练四道基本的回溯/搜索题吧-- 题目描述 中国象棋半张棋盘如图 \(1\) 所示.马自左下角 \((0,0)\) 向右上角 \((m, ...

  9. python将html批量转换为md

    一.安装依赖 pip install html2text 代码实现 import os import shutil import html2text def convert_html2md(src_h ...

  10. Tomcat线程池详解,为什么SpringBoot最大支持200并发?

    Q:经典面试题,SpringBoot 应用可以同时并发处理多少请求? A:SpringBoot 应用并发处理请求数主要由两个因素影响,使用的 Servlet容器(默认使用 Tomcat,常用的还有 j ...