子託管資源
要使用 Deno Deploy 建構子託管,了解系統內的一些關鍵資源會很有幫助。這些資源也呈現在 REST API 中。
組織 Jump to heading
組織 是所有與子託管實作相關資料的容器。您的組織將會有一個名稱和一個 ID。每個組織都有一個分析端點,可用於取得整個組織的指標(例如請求計數和使用的頻寬)。
可以邀請其他 Deploy 使用者協作組織,而存取權杖可以讓具有組織存取權的開發人員能夠透過 API 修改組織內的資源。可以在 Deploy 儀表板中建立新的組織。
專案 Jump to heading
專案 作為部署的組織容器。一個專案包含其部署以及這些部署的分析和使用資訊。
專案是免費的,可以根據需要設定。
為了追蹤個別使用者的用量以進行計費,有一個 API 端點可以報告每個專案的分析(頻寬使用量、請求計數等),粒度為 15 分鐘。
所有部署(無論是在同一個專案內還是不同的專案之間)預設情況下都不共享任何內容。專案是一種組織部署的方式,不收取任何費用。但是,分析是按專案報告的,如果您有多個租戶,我們建議為每個租戶設定一個專案。特別是如果您希望向使用者收取其使用量的費用。
部署 Jump to heading
部署:部署是一組組態、可執行的程式碼和支援的靜態檔案,可以在 Deno Deploy 中的隔離區中執行。部署有一個可以啟動伺服器的入口檔案,可以有一個與它們關聯的 Deno KV 資料庫,並且可以設定為在自訂網域上執行。
部署是一個不可變的物件,包含
- 要執行的原始碼
- 靜態資源
- 環境變數
- 資料庫綁定
- 其他設定
我們提供端點來查詢或串流建置日誌,以及查詢或串流執行日誌。
如果您需要封鎖或解除封鎖部署,您可以透過刪除您需要封鎖的部署或取消分配其網域來做到這一點。這將使部署無法訪問。
子託管系統的建構方式是讓一個部署的行為或負載不會影響其他部署。這也適用於同一個組織內的不同部署。容量會根據需求自動擴展。如果您想限制特定部署或應用程式的資源,您可以使用分析 API 為您提供專案級粒度的詳細指標(請求計數、頻寬等)。您可以使用它來決定是否關閉部署並使其無法訪問。
注意:部署是不可變的,但是,您可以建立一個新的部署,然後將其網域重新對應到新的部署。重新部署端點可以從現有的部署建立一個具有不同設定的新部署。
自訂網域 Jump to heading
自訂網域 可以動態地對應到部署,給予它們一個獨特的 URL(例如 mycompany.com
)。
在使用網域之前,您需要驗證所有權並佈建或上傳 TLS 憑證。
如果您使用的是 Builder 方案,您可以使用萬用字元網域。一旦您註冊了萬用字元網域,您可以使用兩種方式:
- 將所有對
*.mycompany.com
的請求發送到特定的部署 - (即將推出) 將不同的子網域(例如
foo.mycompany.com
和bar.mycompany.com
)分配到不同的部署。
預備環境 vs 生產環境 Jump to heading
Deno Deploy 終端使用者平台在開發人員開啟 github pull request 時自動建立預覽部署,而提交到「main」分支的內容會自動轉變為生產部署。雖然子託管沒有提供開箱即用的 github 整合,但它具有定義您自己的語義來建立預覽和生產部署所需的所有基本要素。
連接 KV 資料庫 Jump to heading
一個 (KV) 資料庫儲存鍵值對。您可以在建立部署時使資料庫可供部署訪問。KV 資料庫可以同時被多個部署使用。
要在子託管中使用 KV:
- 使用 API 建立資料庫
- 當您使用子託管 API 建立部署時,指定您建立的資料庫。
注意:Deno Cron 和 Queues 目前不適用於子託管。
OpenAPI 規範與工具 Jump to heading
Deploy API 的 OpenAPI 規範可以在這裡找到
https://api.deno.com/v1/openapi.json
此規範文件可以與大量與 OpenAPI 相容的工具一起使用。除了此處維護的 REST API 文件之外,您還可以找到自動產生的 API 文件(包括基於瀏覽器的測試工具)在這裡。