摘要:背景當多個項目且某些包無法兼容時,通常我們使用虛擬環境即可解決。但事實上不僅僅只能用于線上應用部署,我們的開發調試環境也可以使用。
背景
當多個Python項目且某些包無法兼容時,通常我們使用虛擬環境即可解決。
但是在團隊中多個環境其實相對比較固定了,較少變更,如果換電腦或者新人加入需要重新一個一個配置虛擬環境并安裝相應的包,會耗費很多時間,而且由于重新安裝的包依賴可能會有版本變更導致各種離奇問題。
但事實上Docker不僅僅只能用于線上應用部署,我們的開發、調試環境也可以使用。
下面以Django項目來舉例,為了說明方便此處有以下前提條件和假設:
基礎Docker已經安裝且可用
Docker已經暴露了遠程訪問地址(使用Pycharm需要),具體方法請自行查閱文檔或教材,假如為tcp://localhost:2375
Docker基本命令不再詳述
Docker的Django環境鏡像已經做好,為:myimage
Django代碼目錄為d:demo
演示環境為Windows 10(由于Docker集成原因,本文不適用于windows 10之前版本系統),linux和mac os可能稍有差別開始使用
普通環境:
python d:demomanage.py runserver 0.0.0.0:8000
Docker啟動:
docker run -it --name demo -v d:demo:/code -p 0.0.0.0:8000:8000 myimage python /code/manage.py runserver 0.0.0.0:8000在Pycharm中無縫使用
添加Docker鏡像:
打開配置 pycharm > File > Settings > Project > Project Interpreter
選擇鏡像
修改原Run配置:
打開原Run配置(和使用本地環境的配置一樣,不再贅述)
選擇剛才添加的鏡像,下面三個復選框保持下圖一樣
上一步選擇鏡像后下面會出現Docker container settings:
點開進行編輯,可以看到此時已經有了Volume bindings,還需要一個端口映射
再次Run就已經是從容器中啟動了(可以看到容器ID),使用Debug啟動也是可以的
底部還有個選項卡,此可以一鍵打開Django shell
問題Q:使用Python Console打開django shell報錯,錯誤示例:
ModuleNotFoundError: No module named "cms"
A:Pycharm > Settings > Build, Execution, Deployment > Console > Django Console 勾選如下兩項,重新打開底部Python Console即可
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/27648.html
摘要:按照指示,分別安裝和,然后測試安裝結果接下來,根據以下項目結構從克隆一份項目或自己創建項目現在我們準備容器運行開啟,只需運行這個命令設置一個新的開發環境。 原文地址:Django Development With Docker Compose and Machine 以下為譯文 Docker 是一個開源的應用容器引擎,讓開發者可以打包他們的應用以及依賴包到一個可移植的容器...
摘要:背景當多個項目且某些包無法兼容時,通常我們使用虛擬環境即可解決。但事實上不僅僅只能用于線上應用部署,我們的開發調試環境也可以使用。 背景 當多個Python項目且某些包無法兼容時,通常我們使用虛擬環境即可解決。 但是在團隊中多個環境其實相對比較固定了,較少變更,如果換電腦或者新人加入需要重新一個一個配置虛擬環境并安裝相應的包,會耗費很多時間,而且由于重新安裝的包依賴可能會有版本變更導致...
摘要:今天整理了一下如何在中部署項目。執行可以查看容器出錯的具體原因。若上述容器都成功運行,則在瀏覽器中輸入時,視圖會返回相應的結果。以交互方式進入容器后,進入數據庫,會看到在數據庫中生成了相應的表。 今天整理了一下如何在docker中部署django項目。 1.環境如下: python3.6 django2.0.5 nginx mysql5.7 gunicorn 2.項目結構如下:...
摘要:今天整理了一下如何在中部署項目。執行可以查看容器出錯的具體原因。若上述容器都成功運行,則在瀏覽器中輸入時,視圖會返回相應的結果。以交互方式進入容器后,進入數據庫,會看到在數據庫中生成了相應的表。 今天整理了一下如何在docker中部署django項目。 1.環境如下: python3.6 django2.0.5 nginx mysql5.7 gunicorn 2.項目結構如下:...
摘要:而大多數數據科學研究的場景下,更快的速度也意味著更早地發現問題和完成檢驗假設的閉環。通常,數據科學被認為研究成果立即應用到生產環境都是比較緩慢的一個過程。 showImg(https://segmentfault.com/img/remote/1460000005771293); 概述 在數據科學研究中,快速驗證想法是非常關鍵的一環,而如何快速開發出數據產品則可以有效推動整個數據科學項...
閱讀 2837·2023-04-25 20:02
閱讀 1435·2021-11-11 16:55
閱讀 614·2021-09-26 09:46
閱讀 6205·2021-09-22 15:55
閱讀 1823·2021-08-09 13:41
閱讀 1572·2019-08-30 15:52
閱讀 2372·2019-08-30 14:13
閱讀 3289·2019-08-26 13:48