在前幾篇文章我們學習了Django的基本專案建置,
相信大家在安裝過程當中多少都會碰到一些問題,以及許多要重新安裝甚至是設定的部分。
那如果未來的服務是需要架設到不同的環境當中,那不是每一台機器都要重新進行設定了嗎?
想到這個相信就會讓許多人非常頭痛吧~
但是聰明的工程師們設計研發出一個非常好用的應用程式 Docker
在接下來的單元我們要來介紹在環境設定與部屬方面的神器 -- Docker
Docker 可以將環境的設定打包,並且只要在每個機器當中安裝好Docker,並且執行,
機器便可以成功跑起來一模一樣的服務~
Docker 是一種容器化技術,可以將環境,設定,程式製作成容器,供開發指使用。
藉由其方便的操作,可以讓我們得到快速部署快速創建的效益。
如上圖所示,在電腦上安裝Docker Engine ,Docker 容器可運行於其上
要啟動Docker 的容器,我們要先製作Dockerfile
我們新增一個名為Dockerfile的檔案
FROM python:3.7-alpine
#複製 requirements.txt進入docker 內部
COPY ./requirements.txt /requirements.txt
RUN pip install -r /requirements.txt
#新增資料夾
RUN mkdir /app
#將外部的app資料夾複製進入docker內部
COPY ./app /app
#設定當前工作環境路徑為 /app
WORKDIR /app
CMD ["python","app.py"]
其中FROM會從Docker hub中下載指定的docker image
我們可以在 docker hub 中找出適合我們的版本https://hub.docker.com/
儲存Dockerfile之後,我們透過docker build 建立docker image
docker build . -t <image名稱>
此時我們會建立一個image
我們可以透過下面指令可以查看機器上所有的image
docker images
透過 docker run 可以把已經製作好的image run 起來,成為container
docker run <image名稱>
如此就可以將設定的Docker程式啟動了~
今天是中秋節~
祝大家能跟家人,朋友,心愛的人們度過美好的一天~
大家明天上班加油!