跳到主要內容

部署到 Fly.io

本指南解釋瞭如何將使用 Prisma ORM 和 PostgreSQL 的 Node.js 伺服器部署到 Fly.io。

Prisma Render 部署示例包含一個具有 REST 端點和簡單前端的 Express.js 應用程式。此應用使用 Prisma Client 從其資料庫中獲取、建立和刪除記錄。本指南將向你展示如何在 Fly.io 上部署此應用程式,無需進行任何修改。

關於 Fly.io

fly.io 是一個雲應用平臺,讓開發者能夠輕鬆部署和擴充套件全棧應用程式,這些應用程式可以在靠近使用者的機器上按需啟動。對於本示例,瞭解以下內容會很有幫助

  • Fly.io 允許你在全球 35 個區域部署長時間執行的“有伺服器”全棧應用程式。預設情況下,應用程式配置為在不使用時自動停止,並在請求到來時按需自動啟動。
  • Fly.io 原生支援各種語言和框架,包括 Node.js 和 Bun。在本指南中,我們將使用 Node.js 執行時。
  • Fly.io 可以直接從 GitHub 啟動應用。當從 CLI 執行 fly launch 時,它會自動配置託管在 GitHub 上的應用程式以在推送時進行部署。

先決條件

獲取示例程式碼

示例程式碼下載到你的本地機器。

curl https://codeload.github.com/prisma/prisma-examples/tar.gz/latest | tar -xz --strip=2 prisma-examples-latest/deployment-platforms/render
cd render

理解示例

在部署應用程式之前,讓我們先了解一下示例程式碼。

Web 應用程式

Express 應用程式的邏輯位於兩個檔案中

  • src/index.js:API。端點使用 Prisma Client 從資料庫中獲取、建立和刪除資料。
  • public/index.html:Web 前端。前端呼叫了一些 API 端點。

Prisma schema 和遷移

此應用程式的 Prisma 元件位於三個檔案中

  • prisma/schema.prisma:此應用程式的資料模型。此示例定義了兩個模型,UserPost。此檔案的格式遵循Prisma schema
  • prisma/migrations/<migration name>/migration.sql:在 PostgreSQL 資料庫中構建此 schema 的 SQL 命令。你可以透過執行prisma migrate dev自動生成此類遷移檔案。
  • prisma/seed.js:定義了一些測試使用者和帖子 Prisma,用於為資料庫填充初始資料

部署示例

1. 執行 fly launch 並接受預設設定

就這樣。部署完成後,你的 Web 服務將立即在其 fly.dev URL 上線。你可以根據需要選擇擴充套件機器的大小、數量和位置。fly console可用於 SSH 連線到新的或現有機器。

更多資訊可以在fly.io 文件中找到。

© . This site is unofficial and not affiliated with Prisma Data, Inc.