Remotion LabRemotion Lab
Lambda升級 Lambda

升級 Lambda

說明如何將 Remotion Lambda 升級到最新版本,包含零停機升級的步驟與注意事項。

升級 Lambda

本頁說明如何將 Remotion Lambda 升級到最新版本。

1. 升級所有 Remotion 套件

將所有套件升級到最新版本(包括 @remotion/lambda,以及 remotion@remotion/cli 等):

npx remotion upgrade

詳見 npx remotion upgrade

升級完成後,您的 package.json 將會類似如下:

{
  "@remotion/bundler": "4.0.1",
  "@remotion/renderer": "4.0.1",
  "@remotion/lambda": "4.0.1",
  "remotion": "4.0.1"
}

2. 部署新的 Lambda 函數

npx remotion lambda functions deploy

詳見 npx remotion lambda functions deploy

此命令會部署一個包含最新版本的新函數。若舊函數仍在生產環境中使用,可以保留不刪除。

3. 更新站點

npx remotion lambda sites create src/index.ts --site-name=my-name

詳見 npx remotion lambda sites create

傳入 --site-name 並指定現有站點名稱,即可更新該站點。URL 將保持不變,但舊版函數可能無法渲染已更新的站點。

若不傳入 --site-name,則會產生新的站點 URL。您需要更新 renderMediaOnLambda() 呼叫中的 serveUrl 參數。

建議函數、站點及呼叫渲染的 @remotion/lambda 套件均使用相同版本。若站點與函數版本不同,可能會出現版本不匹配警告;若協議有所變更,渲染甚至可能失敗。

4. 移除舊函數

注意:請僅在舊函數不再於生產環境中使用時才執行此步驟。

npx remotion lambda functions rm <function-name>

詳見 npx remotion lambda functions rm

零停機升級

如果您已將 Remotion Lambda 部署到生產環境,可以按照以下步驟進行零停機升級:

  1. 部署新函數並建立新站點,舊函數和站點不受影響。
  2. 更新應用程式中的 @remotion/lambda 套件版本、函數名稱及 serveUrl
  3. 發布應用程式更新。從此時起,所有新的渲染都使用新函數和新站點。
  4. 一旦舊版本上沒有進行中的渲染,即可移除舊函數和站點。

常用指令

另請參閱