Python 遠程開發環境部署與調試


一、下載相應開發工具

Pycharm :下載地址 

二、部署開發機

一般在工作過程中,開發環境並不是本地環境,而是指在開發機;因為,有很多依賴本地部署非常麻煩,而開發機中則內置了很多相關的服務

三、代碼自動化部署

由於我們在本地進行代碼編輯、在開發機中進行代碼的運行及調試,因此,需要一種很方便的方式進行代碼的遠程自動化部署
Pycharm 基於SFTP 的自動化部署
Pycharm 中集成了基於SFTP的自動化部署方案,可以實時將改動的代碼部署於線上服務器。
Add Server
配置路徑:Tools -> Deployment -> Configuration -> Add (左上角加號) : Type 選擇SFTP
Connection
說明:
SFTP host :開發給的IP
Root path :當前代碼及依賴的架包等共同的父目錄(在頭條,源代碼一般部署在/opt/tiger 目錄下,請確保當前的用戶在該目錄擁有讀寫權限)
User name :登錄開發集的用戶名
Auth type:使用Key pair 可以很方便的進行登錄
Mapping
 
Deloyment path:源碼上傳到服務器時的目錄
因為在Configuration 中我們已經配置了Root path,因此,此處的Deloyment path 選擇相對的根目錄即可
配置自動上傳

 

 

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
 
Interpreter: 在下一步中選擇對應的python執行器,由於頭條真對MySQLdb等做了服務發現等相關的修改,該修改后的架包放置於:/opt/tiger/ss_lib/python_package/bin/python 下,因此,可以選擇該Python執行器作為Interpreter 或者生成自己的env
Sync folders: 選擇自己在服務器中存放源碼的目錄

五、遠程運行及調試

遠程運行
如本地環境一般運行python程序即可
配置相關依賴
由於項目需要許多外部依賴,如果盡在PYTHONPATH中配置對應的路徑會存在幾個問題:
  1. 多個項目公用PYTHONPATH 會相互影響
  1. 無法再外部依賴內進行遠程debug,因此無法了解內部運行情況
本地與遠程依賴關聯方法如下:
配置本地依賴
將相應的依賴下載到本地,並Add Content Root
Preference -> Project -> Project Structure -> Add Content Root 選擇下載到本地的依賴
依賴遠程關聯
由於大部分的依賴在/opt/tiger 下,因此不需要下載;如果該目錄下不存在,則可以選擇從git中下載,一般存在目錄都會放在/opt/tiger 下
Path mapping
在Run -> Edit Configurations 下配置對應的Path mapping,配置依賴的本地和遠程地址即可。
 

 

 

現在就可以像在本地一樣debug 你的代碼了!!!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM