Python远程开发环境部署与调试过程图解

作者:sunweiye 时间:2023-06-07 08:10:40 

这篇文章主要介绍了Python远程开发环境部署与调试过程图解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

一、下载相应开发工具

Pycharm :下载地址

二、部署开发机

一般在工作过程中,开发环境并不是本地环境,而是指在开发机;因为,有很多依赖本地部署非常麻烦,而开发机中则内置了很多相关的服务

三、代码自动化部署

由于我们在本地进行代码编辑、在开发机中进行代码的运行及调试,因此,需要一种很方便的方式进行代码的远程自动化部署Pycharm 基于SFTP 的自动化部署

Pycharm 中集成了基于SFTP的自动化部署方案,可以实时将改动的代码部署于线上服务器。

Add Server

配置路径:Tools -> Deployment -> Configuration -> Add (左上角加号) : Type 选择SFTP

Python远程开发环境部署与调试过程图解

Connection

Python远程开发环境部署与调试过程图解

说明:

SFTP host :开发给的IP

Root path :当前代码及依赖的架包等共同的父目录(在头条,源代码一般部署在/opt/tiger 目录下,请确保当前的用户在该目录拥有读写权限)

User name :登录开发集的用户名

Auth type:使用Key pair 可以很方便的进行登录Mapping

Python远程开发环境部署与调试过程图解

Deloyment

path:源码上传到服务器时的目录因为在Configuration 中我们已经配置了Root path,因此,此处的Deloyment path 选择相对的根目录即可配置自动上传

Python远程开发环境部署与调试过程图解

Tools -> Deployment -> Automatic Upload(always) 即可自动将修改的代码上传至服务器中

说明:点击Upload to *** 即可将当前代码手动上传至开发机

四、远程调试环境

现在我们的代码在开发机中运行,在开发过程中,我们需要对我们开发的代码进行高效的调试,检查代码逻辑的正确性。远程调试方法有两种:远程调试 和 查看Log远程Debug的有点在于将开发机当做本地环境,可以实时跟踪检查点的数据结果、实时查看日志配置Project Interpreter

配置远程服务器

Preference -> Project -> Project Interpreter -> Add -> SSH Interpreter -> Exsiting server configuration由于我们在之前已经配置了Deployment Configuration Connection ,因此只要选择对应的Deployment Configuration即可

配置Interpreter

Python远程开发环境部署与调试过程图解

Interpreter:在下一步中选择对应的python执行器,由于头条真对MySQLdb等做了服务发现等相关的修改,该修改后的架包放置于:/opt/tiger/ss_lib/python_package/bin/python 下,因此,可以选择该Python执行器作为Interpreter 或者生成自己的envSync folders: 选择自己在服务器中存放源码的目录

五、远程运行及调试

远程运行如本地环境一般运行python程序即可配置相关依赖由于项目需要许多外部依赖,如果尽在PYTHONPATH中配置对应的路径会存在几个问题:

多个项目公用PYTHONPATH 会相互影响

无法再外部依赖内进行远程debug,因此无法了解内部运行情况

本地与远程依赖关联方法如下:

配置本地依赖

将相应的依赖下载到本地,并Add Content Root

Preference -> Project -> Project Structure -> Add Content Root 选择下载到本地的依赖

依赖远程关联由于大部分的依赖在/opt/tiger 下,因此不需要下载;如果该目录下不存在,则可以选择从git中下载,一般存在目录都会放在/opt/tiger 下

Path mapping

在Run -> Edit Configurations 下配置对应的Path mapping,配置依赖的本地和远程地址即可。

Python远程开发环境部署与调试过程图解

现在就可以像在本地一样debug 你的代码了!!!

来源:https://www.cnblogs.com/sunweiye/p/12003640.html

标签:Python,远程,开发,环境,部署,调试
0
投稿

猜你喜欢

  • python将多个py文件和其他文件打包为exe可执行文件

    2021-07-02 05:36:40
  • 跨浏览器的本地存储(二):DOM:Storage

    2008-08-15 13:39:00
  • 利用pandas读取中文数据集的方法

    2021-11-23 12:33:48
  • Mysql中一千万条数据怎么快速查询

    2024-01-15 06:57:05
  • python实现Oracle查询分组的方法示例

    2021-03-30 10:59:54
  • Django项目中动态设置静态文件路径的全过程

    2021-07-12 00:52:24
  • Elasticsearches通过坐标位置实现对附近人的搜索

    2023-05-23 16:16:12
  • Python新手学习装饰器

    2022-11-02 03:42:35
  • PHP引用(&)各种使用方法实例详解

    2023-11-01 18:12:43
  • Python 中闭包与装饰器案例详解

    2021-08-08 12:28:32
  • Python面向对象之接口、抽象类与多态详解

    2021-10-24 10:26:48
  • 源码解析python中randint函数的效率缺陷

    2023-01-24 01:23:54
  • Go语言正则表达式示例

    2023-04-13 19:41:34
  • Python3 适合初学者学习的银行账户登录系统实例

    2021-06-16 05:09:22
  • ORACLE学习笔记-新建用户及建表篇

    2024-01-18 15:33:46
  • 实例解析js中try、catch、finally的执行规则

    2024-04-22 13:25:49
  • Python可视化神器pyecharts之绘制地理图表练习

    2022-08-12 10:20:00
  • Python图片转换成矩阵,矩阵数据转换成图片的实例

    2021-03-31 23:24:35
  • python 等差数列末项计算方式

    2022-01-29 10:12:57
  • 使用 vue-i18n 切换中英文效果

    2024-04-27 16:17:40
  • asp之家 网络编程 m.aspxhome.com