Railway 是一个基础设施平台,你可以在其中配置基础设施、在本地开发该基础设施,然后部署到云端。它支持从 GitHub 即时部署,无需任何配置,具有自动 SSL 和内置数据库配置功能。
本指南将介绍如何部署带有 PostgreSQL 数据库(可选)的 Bun 应用程序,这正是下面模板所提供的。
你可以按照本指南逐步操作,或者只需一键部署预配置的模板:
前提条件:
- 一个准备部署的 Bun 应用程序
- 一个 Railway 账户
- Railway CLI(用于 CLI 部署方法)
- GitHub 账户(用于仪表板部署方法)
方法 1:通过 CLI 部署
步骤 1
确保你已安装 Railway CLI。
bash
bun install -g @railway/cli步骤 2
登录到你的 Railway 账户。
bash
railway login步骤 3
成功验证后,初始化一个新项目。
bash
railway init步骤 4
初始化项目后,添加一个新的数据库和服务。
NOTE
步骤 4 仅在你的应用程序使用数据库时才需要。如果不需要 PostgreSQL,请跳至步骤 5。bash
# 添加 PostgreSQL 数据库。确保先添加这个!
railway add --database postgres
# 添加你的应用程序服务。
railway add --service bun-react-db --variables DATABASE_URL=\${{Postgres.DATABASE_URL}}步骤 5
创建并连接服务后,将应用程序部署到 Railway。默认情况下,服务仅在 Railway 的私有网络内可访问。要使你的应用程序公开访问,你需要生成一个公共域名。
bash
# 部署你的应用程序
railway up
# 生成公共域名
railway domain你的应用程序现已上线!Railway 会在每次 GitHub 推送时自动部署。
方法 2:通过仪表板部署
步骤 1
创建一个新项目
- 前往 Railway 仪表板
- 点击 "+ New" → "GitHub repo"
- 选择你的仓库
步骤 2
添加 PostgreSQL 数据库,并将此数据库连接到服务
NOTE
步骤 2 仅在你的应用程序使用数据库时才需要。如果不需要 PostgreSQL,请跳至步骤 3。- 点击 "+ New" → "Database" → "Add PostgreSQL"
- 数据库创建后,选择你的服务(不是数据库)
- 前往 "Variables" 选项卡
- 点击 "+ New Variable" → "Add Reference"
- 从 postgres 中选择
DATABASE_URL
步骤 3
生成公共域名
- 选择你的服务
- 前往 "Settings" 选项卡
- 在 "Networking" 下,点击 "Generate Domain"
你的应用程序现已上线!Railway 会在每次 GitHub 推送时自动部署。
配置(可选)
默认情况下,Railway 使用 Nixpacks 自动检测并使用零配置构建你的 Bun 应用程序。
但是,使用 Railpack 应用程序构建器提供更好的 Bun 支持,并将始终支持最新版本的 Bun。预配置的模板默认使用 Railpack。
要在自定义项目中启用 Railpack,请将以下内容添加到你的 railway.json:
json
{
"$schema": "https://railway.com/railway.schema.json",
"build": {
"builder": "RAILPACK"
}
}有关更多构建配置设置,请查阅 Railway 文档。