添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

本文說明如何在 GitHub Codespaces 環境中一起執行 FastAPI 和 Postgres。 Codespaces 是裝載于雲端的開發環境。 Codespaces 可讓您建立可設定且可重複的開發環境。

您可以在 瀏覽器中 或整合式開發環境中開啟範例存放庫, (IDE) ,例如使用 GitHub Codespaces 擴充 功能 Visual Studio Code 。

您也可以在本機複製範例存放庫,並在Visual Studio Code中開啟專案時,使用 開發容器 執行。 開發容器需要 Docker Desktop 安裝在本機。 如果您尚未安裝 Docker,您仍然可以使用 VS Code 來執行專案,但您使用的是 GitHub Codespaces 作為環境。

使用 GitHub Codespaces 時,請記住,您每月有固定的核心時數。 本教學課程需要少於一個核心小時才能完成。 如需詳細資訊,請參閱 關於 GitHub Codespaces 計費 。

透過本教學課程所示的方法,您可以從範例程式碼開始,並加以修改,以執行 Django 或 Flask 等其他 Python 架構。

在 Codespaces 中啟動開發環境

有許多可能的建立和使用 GitHub Codespaces 的路徑。 本教學課程說明您可以從其中一個路徑開始。

  • 移至範例應用程式存放庫 https://github.com/Azure-Samples/msdocs-fastapi-postgres-codespace 。

    範例存放庫具有使用 Postgres 資料庫建立具有 FastAPI 應用程式的環境所需的所有設定。 您可以依照 設定 GitHub Codespaces 的 Python 專案 中的步驟建立類似的專案。

  • 選取 [程式碼 ]、[ Codespaces] 索引標籤,然後 + 建立新的 Codespace。

  • 當容器完成建置時,請確認您在瀏覽器左下角看到 Codespaces ,以及該範例存放庫已載入。

    codespace 金鑰組態檔是 devcontainer.json 、 Dockerfile 和 docker-compose.yml 。 如需詳細資訊,請參閱 GitHub Codespaces 概觀 。

    您也可以在 Visual Studio Code 中執行 codespace。 選取瀏覽器左下角的 [Codespaces ],或 ( Ctrl Shift Command + + P P + / Ctrl + ) ,然後輸入 「Codespaces」。 然後選取 [在 VS Code 中開啟 ]。 此外,如果您停止 codespace 並返回存放庫,然後在 GitHub Codespaces 中再次開啟它,您可以選擇在 VS Code 或瀏覽器中開啟它。

  • 選取 .env.devcontainer 檔案,並使用相同的內容建立名為 .env 的複本。

    .env 包含用於程式碼中用來連線到資料庫的環境變數。

  • 如果尚未開啟終端機視窗,請開啟命令選擇區 () Ctrl Shift Command + + P P + / Ctrl + 開啟一個視窗,輸入 「Terminal: Create New Terminal」,然後選取它來建立新的終端機。

  • 選取終端機視窗中的 [ 埠 ] 索引標籤,以確認 PostgreSQL 正在埠 5432 上執行。

  • 在終端機視窗中,執行 FastAPI 應用程式。

    uvicorn main:app --reload
    
  • 選取 [ 在瀏覽器中開啟] 通知。

    如果您沒有看到或錯過通知,請移至 [埠 ] 並尋找埠 8000 的 [ 本機位址 ]。 使用該處所列的 URL。

  • 在預覽 URL 結尾新增 /docs ,以查看 Swagger UI,這可讓您測試 API 方法。

    API 方法是從 FastAPI 從程式碼建立的 OpenAPI 介面產生。

  • 在 [Swagger] 頁面上,執行 POST 方法來新增餐廳。

  • 展開 POST 方法。

  • 選取 [試試看]。

  • 填入要求本文。

    "name": "Restaurant 1", "address": "Restaurant 1 address"
  • 選取 [執行 ] 以認可變更

  • 返回至專案的 GitHub Codespace,選取 SQLTools 擴充功能,然後選取 [要連線的本機資料庫]。

    建立容器時,應該安裝 SQLTools 擴充功能。 如果 SQLTools 擴充功能未出現在活動列中,請關閉 codespace 並重新開啟。

  • 展開 [ 本機資料庫] 節點,直到您找到 餐廳 資料表為止,請以滑鼠右鍵按一下 [顯示資料表記錄]。

    您應該會看到您新增的餐廳。

    若要停止使用 Codespace,請關閉瀏覽器。 (或,如果您以這種方式開啟 VS Code,請關閉它。)

    如果您打算再次使用 Codespace,您可以保留它。 只有執行中的 Codespace 會產生 CPU 費用。 停止的程式碼空間只會產生儲存體成本。

    如果您想要移除 codespace,請移至 https://github.com/codespaces 以管理您的 Codespace。

  • 開發 Python Web 應用程式
  • 開發容器應用程式
  • 瞭解如何使用適用于 Python 的 Azure 程式庫
  •