logo
icon

Convoy

開源的企業級 Webhook 閘道,安全、可靠、可擴展。已整合 PostgreSQL 與 Redis,可一鍵部署。

template cover
部署次數0
發布者adrian539859
建立於2026-05-20
標籤
ToolBackend

在 Zeabur 上部署 Convoy

Convoy 是一套快速、安全的開源 Webhook 閘道。它負責外送 Webhook(重試、限流、簽章、投遞紀錄)與接收 Webhook(HMAC 驗證、來源管理、重播)。此模板會在 Zeabur 上以一鍵自架方式部署 Convoy,並一併佈署它所需的兩個依賴服務:PostgreSQL(持久化)與 Redis(佇列)。

Convoy 由 Frain Technologies 開發,採 Elastic License 2.0。此模板僅為部署配方 — 你自架自己的執行個體,完全掌握自己的資料與 API 金鑰。


包含內容

單一專案內三個服務:

服務映像用途
convoygetconvoy/convoy:latestAPI、儀表板、Webhook 投遞 Worker(單一執行檔)。首次啟動會自動套用資料庫遷移。
postgresqlpostgres:18儲存專案、端點、事件、投遞、嘗試紀錄
redisredis/redis-stack-server:latest佇列、限流計數、快取

Convoy 透過 Zeabur 私有網路自動接上 PostgreSQL 與 Redis,無需手動設定。

部署步驟

  1. 點擊此模板的 Deploy
  2. 選擇 Convoy 網域 前綴(預設可用於測試 — 可日後在 Zeabur 後台綁定自訂網域)。
  3. 等待約 30 秒讓三個服務啟動。Convoy 會在首次啟動時自動執行資料庫遷移。
  4. 開啟 Zeabur 為 convoy 服務顯示的網址。

首次登入

首次啟動時,Convoy 會建立預設超級使用者。在 convoy 服務的執行時 Log 中可以看到:

Superuser created successfully:
  Username: [email protected]
  Password: default

以此帳密登入後,請立刻

  1. 建立你自己的組織與使用者。
  2. 刪除預設的 [email protected] 帳號。
  3. 為正式流量輪替 API 金鑰。

下一步

  • 送出第一個 Webhook:在儀表板建立 Project → 新增 Endpoint → 發佈 Event。Convoy 會簽章、投遞並記錄結果。
  • 接收 Webhook:在 Project 下設定 Source,Convoy 會給你一個如 https://convoy.zeabur.app/ingest/<id> 的網址提供給第三方。
  • API:完整參考請見 getconvoy.io/docs/api-reference
  • 自架文件getconvoy.io/docs

可調參數

所有 Convoy 設定可在 convoy 服務的 Variables 分頁調整。常用:

變數說明
CONVOY_HOSTConvoy 對外網址。已預設為 Zeabur 網域;綁自訂網域後請更新。
CONVOY_SIGNUP_ENABLEDtrue 允許 UI 新註冊;false 鎖定部署。
CONVOY_DB_MAX_OPEN_CONNPostgreSQL 連線池大小(預設 100)。小方案請調低。
CONVOY_SMTP_*密碼重設 / 邀請信用的 SMTP 設定,選用。

完整環境變數參考:convoy.env.example

維運

  • 資料庫備份:Zeabur 會自動快照 PostgreSQL。可從 postgresql 服務的 Backup 分頁還原。
  • 升級:Convoy 新版本會發佈至 getconvoy/convoy:latest。重新啟動 convoy 服務即會抓取新映像,並在下次啟動時自動套用遷移。
  • 資源:輕量流量(約 10 req/s)下,每服務 1 vCPU / 1 GB 即可。若投遞延遲升高,優先提升 convoy 的 CPU。

疑難排解

  • 首次部署回 502:Convoy 需約 15 秒跑遷移後 HTTP 才會就緒,請稍候再試。
  • 遷移迴圈(retrying in 5s):PostgreSQL 還沒就緒。Convoy 會自動重試,最多約一分鐘。
  • 找不到失敗投遞紀錄:可查 PostgreSQL 的 event_deliveries 表,或從 Convoy UI 的 Project → Event Deliveries 檢視。

致謝