Skip to main content

deploySite()

EXPERIMENTAL

Cloud Run 处于 Alpha 阶段,这意味着 API 可能会在任何版本中更改,文档尚未完成。请查看 更改日志 以了解最新的重大更改。

将 Remotion 项目打包并上传到 Cloud Storage 存储桶。一旦上传完成,Cloud Run 服务可以通过指定 URL 渲染 Remotion 项目中的任何合成。

  • 如果在本地进行更改,您需要重新部署站点。您可以使用 siteName 覆盖以前的站点。
  • 请注意,Remotion 项目将部署到子目录,而不是域的根目录。因此,您必须确保如果在 Remotion 项目中指定了路径,则这些路径能够处理此情况。
  • 在调用此函数之前,您应该创建一个存储桶,请参阅 getOrCreateBucket()

示例

ts
import { deploySite } from "@remotion/cloudrun";
import path from "path";
 
const { serveUrl } = await deploySite({
entryPoint: path.resolve(process.cwd(), "src/index.ts"),
bucketName: "remotioncloudrun-c7fsl3d",
options: {
onBundleProgress: (progress) => {
// Progress is between 0 and 100
console.log(`Bundle progress: ${progress}%`);
},
onUploadProgress: ({
totalFiles,
filesUploaded,
totalSize,
sizeUploaded,
}) => {
console.log(
`Upload progress: Total files ${totalFiles}, Files uploaded ${filesUploaded}, Total size ${totalSize}, Size uploaded ${sizeUploaded}`,
);
},
},
});
console.log(serveUrl);
ts
import { deploySite } from "@remotion/cloudrun";
import path from "path";
 
const { serveUrl } = await deploySite({
entryPoint: path.resolve(process.cwd(), "src/index.ts"),
bucketName: "remotioncloudrun-c7fsl3d",
options: {
onBundleProgress: (progress) => {
// Progress is between 0 and 100
console.log(`Bundle progress: ${progress}%`);
},
onUploadProgress: ({
totalFiles,
filesUploaded,
totalSize,
sizeUploaded,
}) => {
console.log(
`Upload progress: Total files ${totalFiles}, Files uploaded ${filesUploaded}, Total size ${totalSize}, Size uploaded ${sizeUploaded}`,
);
},
},
});
console.log(serveUrl);

参数

一个具有以下属性的对象:

entryPoint

指向 Remotion 项目入口点的绝对路径。通常情况下,您的 Remotion 项目的入口点存储在 src/entry.tsx 中。

bucketName

要部署网站的存储桶。该存储桶必须由 Remotion Cloud Run 创建。

siteName?

可选

指定您希望站点部署到的 Cloud Storage 存储桶的子文件夹。如果省略此属性,将创建一个具有随机名称的新子文件夹。如果已存在与您传递的名称相同的站点,则将覆盖它。只能包含以下字符:0-9a-zA-Z-!_.*'()

options?

可选

一个具有以下属性的对象:

onBundleProgress

Webpack 在打包进度进行时的回调。将一个介于 0 和 100 之间的数字传递给回调函数,参见页面顶部的示例。

onUploadProgress

在资产上传进度发生变化时调用的回调函数。将以下属性的对象传递给回调函数:

  • totalFilesnumber):捆绑包中的文件总数。
  • filesUploadednumber):到目前为止已完全上传的文件数量。
  • totalSizenumber):捆绑包中所有文件的总字节数。
  • sizeUploadednumber):到目前为止已上传的字节数。

webpackOverride

允许传递自定义的 webpack 覆盖。有关更多信息,请参阅bundle() -> webpackOverride

enableCaching

指定是否应启用 webpack 缓存。有关更多信息,请参阅bundle() -> enableCaching

publicDir

设置可以使用staticFile()加载的文件所在的目录。默认情况下,它是位于Remotion Root文件夹中的 public/ 文件夹。如果传递相对路径,它将相对于Remotion Root解析。

rootDir

Remotion 项目的根目录。应设置为包含安装 Remotion 的 package.json 的目录。默认情况下,它是当前工作目录。

note

当前工作目录是程序执行的目录。它与调用 bundle() 的文件不同。

ignoreRegisterRootWarning

忽略传递不包含 registerRoot 的入口文件时抛出的错误。

返回值

具有以下值的对象:

serveUrl

string_

一个 URL,例如 https://storage.googleapis.com/remotioncloudrun-123asd321/sites/abcdefgh/index.html

您可以使用此“Serve URL”在 Remotion Cloud Run 上渲染视频:

如果您在 Cloud Run 上渲染,还可以将站点名称(在本例中为 abcdefgh)作为缩写传递。

siteName

string

给定的站点标识符。如果您没有传递站点名称,则是您传递给此函数的站点名称,否则是生成的随机字符串。

stats

具有 3 个条目的对象:

  • uploadedFiles
  • deletedFiles
  • untouchedFiles

每个都是一个 number

另请参阅