Bun

Bun 是一个全功能的 JavaScript 运行环境和工具包,专为速度而设计,包含一个打包工具、测试运行器和与 Node.js 兼容的包管理器。

您可以轻松地在 Zeabur 上部署您的 Bun 项目。

快速开始

创建 Bun 项目

您可以使用以下命令初始化一个 bun 项目:

mkdir bun-app
 
cd bun-app
 
bun init

创建 HTTP 服务器

打开 index.ts 并贴上以下代码片段,它使用 Bun.serve 实现了一个简单的 HTTP 服务器。

请记得在你的 serve 函数中将 port 修改为 Bun.env.PORT,以确保应用程序可以正确监听由 Zeabur 提供的环境变量 PORT

index.ts
const server = Bun.serve({
  port: Bun.env.PORT ?? 3000, // 将端口修改为Bun.env.PORT
  fetch() {
    return new Response("Bun on Zeabur!");
  },
});
 
console.log(`Listening on http://localhost:${server.port} ...`);

此外,确保在 package.json 文件中指定一个入口点。

Zeabur 目前支持以下文件扩展名作为入口点:.js.ts.tsx.jsx.mjs.mts.cjs.cts

package.json
{
  "name": "bun-app",
  "module": "index.ts", // let zeabur know where to start
  "type": "module",
  // ...
}

识别项目

Zeabur 将自动识别您的应用程序为 Bun 项目。请确保您的项目根目录中有一个 bun.lockb 文件。

root
├── bun.lockb
├── index.ts
└── package.json

如果您不希望将 bun.lockb 文件提交到版本库中,可以将 bun-types 安装到您的项目中。

package.json
{
  "devDependencies": {
    "bun-types": "latest"
  }
}

指定 Bun 版本

默认情况下 Zeabur 会选择 最新 的 Bun 稳定版

您可以在 package.json 文件中使用 engines.bun 字段指定 Bun runtime 的版本。

package.json
{
  "engines": {
    "bun": "1.1.38"
  }
}

您也可以使用 Semver 格式指定一个版本范围。

package.json
{
  "engines": {
    "bun": "^1.1.38"
  }
}

部署

点击 Git 按钮。

搜索您的 Bun app 仓库,点击导入,您的 Bun app 将开始部署。

deploy

生态系统

Bun 拥有强大的生态系统,您可以使用各种框架( 如Astro、Nuxt、SvelteKit、ElysiaJS等 )构建应用程序。

您可以部署这些应用,并将 Bun 作为您的运行环境或包管理器。

了解更多关于 Bun - 生态系统 的信息。