deno.com
本页内容

将 Deno 部署到 Cloudflare Workers

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

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

注意:你只能部署 模块 Worker,而不是 Web 服务器或应用程序。

设置 denoflare 跳转到标题

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

安装它:

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

创建你的函数 跳转到标题

在一个新目录中,我们来创建一个 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 跳转到标题

下一步是创建一个 .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”,然后在右侧找到“Account ID”来找到你的 accountId

你可以从你的 Cloudflare API 令牌设置中生成一个 apiToken。创建 API 令牌时,请务必使用“编辑 Cloudflare Workers”模板。

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

denoflare push main

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

New function on Cloudflare Workers

搞定!

您找到所需内容了吗?

隐私政策