Skip to main content
On this page

将 Deno 部署到 Cloudflare Workers

Cloudflare Workers 允许您在 Cloudflare 的边缘网络上运行 JavaScript。

这是一个关于将 Deno 函数部署到 Cloudflare Workers 的简短指南。

注意:您只能部署 模块 Worker 而不是网页服务器或应用程序。

设置 denoflare Jump to heading

为了将 Deno 部署到 Cloudflare,我们将使用这个社区创建的 CLI denoflare

安装它:

deno install --unstable-worker-options --allow-read --allow-net --global --allow-env --allow-run --name denoflare --force \
https://raw.githubusercontent.com/skymethod/denoflare/v0.6.0/cli/cli.ts

创建您的函数 Jump to heading

在一个新目录中,创建一个 main.ts 文件,里面将包含我们的模块 Worker 函数:

export default {
  fetch(request: Request): Response {
    return new Response("Hello, world!");
  },
};

最基本的模块 Worker 函数必须 export default 一个对象,该对象暴露一个 fetch 函数,返回一个 Response 对象。

您可以通过运行以下命令在本地测试它:

denoflare serve main.ts

如果您在浏览器中访问 localhost:8080,您将看到响应内容为:

Hello, world!

配置 .denoflare Jump to heading

下一步是创建一个 .denoflare 配置文件。在其中,添加以下内容:

{
  "$schema": "https://raw.githubusercontent.com/skymethod/denoflare/v0.5.11/common/config.schema.json",
  "scripts": {
    "main": {
      "path": "/absolute/path/to/main.ts",
      "localPort": 8000
    }
  },
  "profiles": {
    "myprofile": {
      "accountId": "abcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
      "apiToken": "abcxxxxxxxxx_-yyyyyyyyyyyy-11-dddddddd"
    }
  }
}

您可以通过访问您的 Cloudflare 仪表板,点击 "Workers",并找到右侧的 "帐户 ID" 来查找您的 accountId

您可以从您的 Cloudflare API Token 设置生成一个 apiToken。 创建 API 令牌时,请确保使用 "编辑 Cloudflare Workers" 模板。

在您将两者添加到 .denoflare 配置后,让我们尝试将其推送到 Cloudflare:

denoflare push main

接下来,您可以在您的 Cloudflare 账户中查看您的新函数:

Cloudflare Workers 上的新函数

太棒了!

部署一个 Fresh 应用 Jump to heading

如果您正在使用 Fresh 构建,框架有其 自己的部署指南。有关如何将 Fresh 应用部署到 Cloudflare Workers 和其他平台,请参阅 Fresh 文档

Last updated on

Did you find what you needed?

编辑此页面
Privacy policy