Docker部署Flask應用


創建應用

首先,編寫一個簡單的Flask應用:docker_test/flask_app.py

Docker 安裝

請根據自己的操作系統自行安裝。

Docker簡介

  • Docker 鏡像
    Docker鏡像 (Image)類似於虛擬機鏡像,可以將它理解為一個面向Docker引擎的只讀模版,包含了文件系統。鏡像是創建Docker容器的基礎。
  • Docker 容器
    Docker容器 (Container)類似於一個輕量級的沙箱,Docker利用容器來運行和隔離應用。容器是從鏡像創建的應用運行實例,可以將其啟動、開始、停止、刪除,而這些容器都是相互隔離、互不相見的。
  • Docker 倉庫
    Docker倉庫 (Repositort)類似於代碼倉庫,是Docker集中存放鏡像文件的場所。根據公開分享與否,Docker倉庫分為公開倉庫 (Public)和私有倉庫 (Private)兩種形式。
    目前最大的公開倉庫是Docker Hub,存放了大量的鏡像供用戶下載。

Docker 部署步驟

下載python鏡像

可在docker.hub網站上查詢python鏡像的版本,下載想要的版本
docker pull python:XXX

運行python鏡像

docker run -it python:XXX

另起一個控制台窗口,查看上步容器的ID

docker ps|grep python 可以看到當前容器的ID

進入python容器

docker exec -it 容器ID /bin/bash

安裝Flask應用所需的依賴包

pip install -r requirements.txt

安裝完成后,另起一個窗口,將當前的容器制作成鏡像

docker commit 容器ID 新名字

在docker_test/下編寫dockfile, 舉例

FROM docker_test:v0.1
COPY flask_app.py /flask_app.py
EXPOSE 5000
ENTRYPOINT ["python","flask_app.py"]

第一行為基礎鏡像,即第7步中制作的鏡像
第二行是將Python程序導入容器
第三行是暴露python的端口
第四行是運行容器時執行的命令

在docker_test/下制作鏡像

docker build -t 鏡像名字 .

運行容器

docker run -p5000:5000 鏡像名字

調試


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM