天天看點

Docker學習筆記(五)—— Windows下建構Dockerfile鏡像建立Python運作環境目的編寫Dockerfile檔案建構鏡像執行鏡像Tips

目的

在windows系統下通過Dockerfile建構一個鏡像,實作python程式運作功能。

編寫Dockerfile檔案

建立Dockerfile檔案、py檔案、requirements.txt檔案放到同一目錄下:

Docker學習筆記(五)—— Windows下建構Dockerfile鏡像建立Python運作環境目的編寫Dockerfile檔案建構鏡像執行鏡像Tips

編寫Dockerfile

# 基于python鏡像
FROM python

# 作者資訊
MAINTAINER yucen <https://blog.csdn.net/qq_14997473>

# 工作目錄
WORKDIR /code

# 拷貝py檔案和requirements.txt檔案
ADD . /code
# 也可使用以下兩句實作
#COPY test.py /code/
#COPY requirements.txt /code/

# 更新pip
RUN pip install --upgrade pip --index-url https://pypi.douban.com/simple

# pip安裝依賴包
RUN pip install -r requirements.txt

# 執行python檔案
CMD ["python","test.py"]
           

建構鏡像

首先cd到Dockerfile所在目錄

cd C:\Users\User\Desktop\new
           
Docker學習筆記(五)—— Windows下建構Dockerfile鏡像建立Python運作環境目的編寫Dockerfile檔案建構鏡像執行鏡像Tips

執行docker bulid指令

docker build -t yucen_py:v1 .
           

執行鏡像

docker run -it yucen_py:v1
           

為了友善測試,python檔案建構了最簡單的hello world程式,執行結果如下:

Docker學習筆記(五)—— Windows下建構Dockerfile鏡像建立Python運作環境目的編寫Dockerfile檔案建構鏡像執行鏡像Tips

Tips

1、在建立Dockerfile時,檔案名一定是“Dockerfile”,注意大小寫。類型為檔案,無字尾。

2、在Dockerfile檔案中,以 # 開頭的視為注釋,但如果在有效指令後同一行用 # 注釋,會将其作為參數處理導緻報錯。

3、假如建立Dockerfile時不拷貝test.py檔案,在運作時利用容器資料卷也可執行檔案:

docker run -it --rm -v /C/Users/User/Desktop/new:/code yucen_py:v1
           

4、假如在Dockerfile檔案中不寫 CMD ["python","test.py"] ,也可在 docker run 時執行python檔案:

docker run -it yucen_py:v1 python test.py