使用 Docker 搭建開發環境

咱們知道,Docker 能爲咱們創造出一個個相對獨立且又能互相通訊的容器環境,咱們把本身的應用放在裏面,就能達到快速部署的目的,沒錯,咱們的確是經常使用 Docker 來打包和部署咱們的應用,但今天要分享的是花費絕大部分程序員最多時間的開發環節的內容,適合有以下需求的同窗閱讀:python

  • 想要或須要多版本環境開發;
  • 優化團隊項目開發環境管理;
  • 不想污染「本地」環境;
  • 喜歡 Docker。

由淺入淺

談到開發,除了不一樣語言的運行環境外,另外一個不得不談的就是開發時使用的各類編輯器或是 IDE,不管選用哪種工具,咱們的目的都應該是提升生產力。本文使用的是 PyCharm(題外話,最近我又續費了個人我的帳戶,因爲我用了好幾款不一樣的 IDE,因此我買的是全家桶,一年下來大概在 1800 RMB 左右,算一下其實仍是很值得的)。程序員

搭建一個最基礎的環境

咱們先嚐試使用 Python 官方鏡像做爲最基礎的開發環境吧,這個例子中我使用的是 python:3.7 這個鏡像。 若是你本地沒有這個鏡像,能夠先運行 docker pull python:3.7 再回來看這篇文章。docker

在你喜歡的目錄下建立一個新的項目目錄,例如 ~/Desktop/myproject,而後使用 PyCharm 打開這個目錄,而後可參考以下步驟:bash

  1. 添加 Docker
    添加 Docker
  2. 添加 Project interpreter
    添加 Project interpreter
    添加 Project interpreter

完成上面的步驟後,等待 IDE 處理完畢,而後這個項目就會使用 python:3.7 這個鏡像做爲運行環境了。app

咱們寫個程序驗證一下是否能正常運做吧:框架

  1. 運行 app.py
    Run hello world
  2. Debug app.py
    Debug hello world

如今 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 image
此時,咱們回到 PyCharm,按照上文中的 添加 Project interpreter 步驟,在選擇鏡像時改爲 myproject 鏡像便可。

寫個簡單的程序驗證一下: 優化

run spider.py
能夠看出,咱們可以使用 myproject 鏡像內的 requests 庫爲咱們服務了(若是 IDE 提示說沒有 requests 庫,能夠重啓一下 IDE,就能夠正確加載出來了)。

至此,用 Docker 搭建 Python 開發環境的套路就完畢了,但我想會有一些同窗說實際開發過程當中,環境每每比這個複雜不少,這種玩具不頂用呀。的確,就我我的而言,我幾乎沒有使用過這種方式來搭建正式項目的開發環境,但稍安勿躁,我會在另一篇文章中分享更適合正式項目的開發環境搭建,敬請期待。

相關文章
相關標籤/搜索