Pycharm遠程調試Django項目

本來說堅持把blog寫下去,無奈又落下了一個多月了。除了自己總是愛拖延,可能更大的原因是blog沒幾個人看,少了很多動力,不過為了鍛煉自己的總結能力,加深自己的記憶,就算是寫給自己看也要寫下去。廢話不多說,進入正題...
最近因為需要要把django項目部署到服務器端,又想在本地進行調試,發(fā)現了pycharm的遠程調試的強大(不得不佩服jetbrains公司),網上搜出來的很多都是零散的,過程中也是踩了很多的坑,于是這里就來記錄一下整個過程。
為了方便測試,這里使用的是virtual Box安裝的ubuntu17.04。

一丶遠程連接配置

首先需要配置的是ssh服務,ubuntu默認是沒有安裝openssh-server的,那就進入終端命令
sudo apt-get install openssh-server
然后查看ssh服務是否啟動
ps -e|grep -ssh
如果看到sshd的進程就說明已經啟動了,只有ssh-agent是沒有啟動的
然后手動去啟動
sudo /etc/init.d/ssh start
ssh默認的訪問端口是22,可以進入配置文件修改,這里就不多說了,如果修改后了直接進行重啟
sudo /etc/init.d/ssh restart
這里就不使用證書的方式進行訪問了,直接使用遠程登錄用戶的方式
然后進入pycharm, File->Settings->Deployment可以看到如下界面

host填寫服務器的公網ip,如果是用的虛擬機的話可以使用來查看ip
ifconfig
這里可以使用root用戶來連接,依次填入,然后就可以連接了,連接后選擇項目在遠程主機的根目錄,可以直接新建一個。配置完成后,再去配置下Mappings,選擇本地項目的根目錄就可以了,最后不要忘了Apply。

現在就可以把項目直接上傳到服務器端了,然后選中項目根目錄(切記不是選中某個文件!)
然后點擊Tools->Deployment->Upload Default server
這樣的話項目就上傳完成了。

二丶配置遠程虛擬環(huán)境

既然是python項目,自然要用到virtualenv和virtualenvwrapper。
直接使用命令
pip3 install python3-virtualenv
如果安裝失敗的話,就使用
sudo apt-get install python3-virtualenv
然后安裝virtualenvwrapper
pip3 install virtualenvwrapper
安裝完成后需要配置下環(huán)境變量
vim ~/.bashrc
然后把光標移動到最后一行,加入如下兩行
export WORKON_HOME=$HOME/.virtualenvs source /usr/local/bin/virtualenvwrapper.sh
保存后重新加載一遍才會生效
source ~/.bashrc
這樣的話虛擬環(huán)境的配置就完成了
然后可以使用
mkvirtualenv xxx #新建虛擬環(huán)境 workon xxx #進入虛擬環(huán)境
因為ubuntu下默認的python版本是python2.7的,這里要建python3的環(huán)境可以直接使用
mkvirtualenv Test --python=python3.5
接下來是安裝項目的擴展包,因為我們之前只是將項目上傳到服務器端,但是新建的虛擬環(huán)境擴展包為空,我們總不能一個個去安裝吧, 這里我們可以把之前的擴展包全部寫在一個test.txt文件中,然后進入虛擬環(huán)境后使用命令
pip3 install -r test.txt
如果安裝速度慢的話,可以使用豆瓣源,這里就不多說了。
這些工作完成后, 然后進入Pycharm File->Setting->Project Interpreter,把項目環(huán)境改成遠程服務器端的虛擬環(huán)境
點擊設置按鈕addRomte->SSH Credential,填入服務器端的相關信息,然后在ython interpreter path選擇在服務器端建立好的虛擬環(huán)境,等待加載完成后Apply一下,這樣準備工作就完成了。

三丶項目相關的配置

這里服務器端MySQL的配置就不多說了,這個基本百度出來的方法沒什么問題,
把本地數據轉移到服務器端可以直接使用Navicate for mysql的數據傳輸選項。

主要記錄下django里settings文件的配置,之前在本地進行調試的時候DATABASES里面的host使用的localhost使用的是localhost或者127.0.0.1,但是放到服務器端后要把它修改為服務器的公網ip。
然后還要修改一下這個
ALLOWED_HOSTS = ['*']
這些都完成后再去Pycharm的Edit Confrgrations中,也就是項目運行的配置環(huán)境中修改一下Host,端口默認是8000和Python iterpreter為遠程虛擬環(huán)境。
然后就可以直接在本地運行服務器端的項目。

這樣的話使用Pycahrm進行遠程調試的整體過程就完成了,這里有很多細節(jié)我就沒多說了。如果有哪些地方有問題,可以留言。
該blog首發(fā)legend's 轉載請注明出處

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Spring Cloud為開發(fā)人員提供了快速構建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務發(fā)現,斷路器,智...
    卡卡羅2017閱讀 134,969評論 19 139
  • Spring Boot 參考指南 介紹 轉載自:https://www.gitbook.com/book/qbgb...
    毛宇鵬閱讀 46,959評論 6 342
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 173,424評論 25 708
  • 你曾在何方 帶走的女孩 孤獨迷失在 深夜的獨白 清風不等待 你要的未來 而后你還是 寂寞的釋懷 走不散的 青春無名...
    青只閱讀 217評論 1 3
  • 2016, 我來了....
    dkshfsjkd閱讀 289評論 0 0