咱們知道,Docker 能爲咱們創造出一個個相對獨立且又能互相通訊的容器環境,咱們把本身的應用放在裏面,就能達到快速部署的目的,沒錯,咱們的確是經常使用 Docker 來打包和部署咱們的應用,但今天要分享的是花費絕大部分程序員最多時間的開發環節的內容,適合有以下需求的同窗閱讀:python
談到開發,除了不一樣語言的運行環境外,另外一個不得不談的就是開發時使用的各類編輯器或是 IDE,不管選用哪種工具,咱們的目的都應該是提升生產力。本文使用的是 PyCharm(題外話,最近我又續費了個人我的帳戶,因爲我用了好幾款不一樣的 IDE,因此我買的是全家桶,一年下來大概在 1800 RMB 左右,算一下其實仍是很值得的)。程序員
咱們先嚐試使用 Python 官方鏡像做爲最基礎的開發環境吧,這個例子中我使用的是 python:3.7 這個鏡像。 若是你本地沒有這個鏡像,能夠先運行 docker pull python:3.7
再回來看這篇文章。docker
在你喜歡的目錄下建立一個新的項目目錄,例如 ~/Desktop/myproject,而後使用 PyCharm 打開這個目錄,而後可參考以下步驟:bash
完成上面的步驟後,等待 IDE 處理完畢,而後這個項目就會使用 python:3.7 這個鏡像做爲運行環境了。app
咱們寫個程序驗證一下是否能正常運做吧:框架
如今 myproject 這個項目就能夠正常運做了,但咱們通常會在開發時會使用各類不一樣的框架或者庫,那麼此時咱們就須要去自定義一個鏡像,而後使用自定義鏡像做爲開發環境了。編輯器
假如,咱們如今須要作一個簡單的爬蟲,那麼咱們就須要 requests 庫,也就是說咱們的鏡像就須要預先安裝 requests 庫以供使用,下面是自定義鏡像的 Dockerfile 內容:ide
FROM python:3.7
RUN pip install requests
CMD ["python3"]
複製代碼
文件內容很簡單,咱們只是基於 python:3.7 鏡像去自定義咱們本身的鏡像,使用 RUN pipinstall requests
安裝了 requests 庫。 接着咱們須要構建出本身的鏡像,這裏咱們把鏡像名字定位 myproject,因此咱們運行 docker build -t myproject .
,稍等片刻,咱們就獲得了一個自定義鏡像了,能夠運行 docker images
查看: 工具
寫個簡單的程序驗證一下: 優化
能夠看出,咱們可以使用 myproject 鏡像內的 requests 庫爲咱們服務了(若是 IDE 提示說沒有 requests 庫,能夠重啓一下 IDE,就能夠正確加載出來了)。至此,用 Docker 搭建 Python 開發環境的套路就完畢了,但我想會有一些同窗說實際開發過程當中,環境每每比這個複雜不少,這種玩具不頂用呀。的確,就我我的而言,我幾乎沒有使用過這種方式來搭建正式項目的開發環境,但稍安勿躁,我會在另一篇文章中分享更適合正式項目的開發環境搭建,敬請期待。