透過 docker 發行 FastAPI 到 Azure

前言 除了 Azure 外,還有很多公有雲的服務可以做選擇,譬如AWS/GCP/heroku…等等,甚至可能不採用公有雲服務,自己架設伺服器也是有可能,基於以上這些不同環境,我會建議將服務都包成 docker,讓所開發的應用程式比較不會受到伺服器環境的影響,本篇就來介紹從一個基本的 FastAPI 包成 docker,並發佈的 Azure 服務上 docker 環境安裝 Docker 是一種軟體平台,可讓您快速地建立、測試和部署應用程式。Docker 將軟體封裝到名為容器的標準化單位,其中包含程式庫、系統工具、程式碼和執行時間等執行軟體所需的所有項目。使用 Docker,您可以將應用程式快速地部署到各種環境並加以擴展,而且知道程式碼可以執行 — from AWS 的介紹 https://aws.amazon.com/tw/docker/ 關於 docker 環境的安裝,網路上教學應該很多了,此篇文章就不再介紹,如果安裝成功,應該在命令列透過 docker — version 指令可以看到版本 建立一個基本的 FastAPI 本篇再以一個最基本的 API 來做包成 docker 的介紹 requirements.txt fastAPI uvicorn main.py from typing import Optional from fastapi import FastAPI app = FastAPI() @app.get("/") def read_root(): return {"Hello": "World"} @app.get("/items/{item_id}") def read_item(item_id: int, q: Optional[str] = None): return {"item_id": item_id, "q": q} 執行以下指令 pip install -r requirement....

2023-01-15 · 2 min · Kyle