Skip to content

部署指南

TSH 支持多种部署方式,推荐使用 Cloudflare Pages 或 Cloudflare Workers 部署。

前置准备

bash
# 克隆仓库
git clone https://github.com/tsh-dev/tsh.git
cd tsh/cf-worker

# 安装依赖(仅构建需要 Node.js)
npm install

方式一:Cloudflare Pages 部署(推荐)

1. 推送代码到 Git 仓库

将代码推送到 GitHub、GitLab 或 Codeberg。

2. 在 Cloudflare 创建 Pages 项目

  1. 登录 Cloudflare Dashboard
  2. 进入 Workers & PagesCreate applicationPages
  3. 连接你的 Git 仓库

3. 配置构建设置

设置项
Framework presetNone
Build commandnode build-worker.js
Build output directorypublic
Root directorycf-worker

4. 部署

点击 Save and Deploy,Cloudflare 会自动构建并部署。

TIP

Cloudflare Pages 会自动为每次 Git 提交触发部署,并生成预览 URL。

方式二:Cloudflare Worker 部署

1. 安装 Wrangler CLI

bash
npm install -g wrangler
wrangler login

2. 构建 Worker

bash
cd cf-worker
node build-worker.js

这会生成 src/worker.js,将所有静态资源内联到 Worker 中。

3. 配置 wrangler.toml

cf-worker/ 目录下创建 wrangler.toml

toml
name = "tsh"
main = "src/worker.js"
compatibility_date = "2024-01-01"

[vars]
# 可选:自定义变量

4. 部署

bash
wrangler deploy

部署成功后会输出 Worker URL,如 https://tsh.your-subdomain.workers.dev

5. 绑定自定义域名(可选)

在 Cloudflare Dashboard 中:

  1. 进入 Worker 详情页
  2. TriggersCustom Domains
  3. 添加你的域名

方式三:本地运行

开发服务器

bash
cd cf-worker
node local-dev.js
# 打开 http://localhost:8787/

local-dev.js 提供完整的本地开发环境,包括 /proxy CORS 代理端点。

预览构建结果

bash
cd cf-worker
node build-worker.js
npx wrangler dev

方式四:其他静态托管

TSH 的 public/ 目录可以部署到任何静态文件托管服务:

Vercel

bash
cd cf-worker
npx vercel --prod

设置 Output Directory 为 public

Netlify

bash
cd cf-worker
npx netlify deploy --prod --dir=public

Nginx

public/ 目录内容复制到 Nginx 的 web root:

nginx
server {
    listen 80;
    server_name look.tsh.qzz.io;
    root /var/www/tsh/public;
    index index.html;

    location / {
        try_files $uri $uri/ /index.html;
    }
}

注意

静态托管方式不支持 /proxy CORS 代理端点。从外部 URL 安装插件时需要目标服务器支持 CORS,或自行配置代理。

文档站部署

TSH 文档站使用 VitePress 构建,可通过 Wrangler 直接部署到 Cloudflare Pages。

1. 安装依赖

bash
cd tsh-docs
npm install

2. 本地预览

bash
npm run dev
# 打开 http://localhost:5173/

3. 构建并部署

bash
# 构建
npm run build

# 通过 Wrangler 一键部署到 Cloudflare Pages
npx wrangler pages deploy

wrangler.toml 已配置好 pages_build_output_dir,Wrangler 会自动读取。

4. 绑定自定义域名(可选)

在 Cloudflare Dashboard → Pages 项目 → Custom domains 中添加域名。

环境要求

组件最低版本说明
Node.js18.0+构建工具链
Chrome / Edge86+File System Access API
浏览器Chromium 内核Firefox/Safari 不支持

更新部署

bash
# 拉取最新代码
git pull

# 重新构建
cd cf-worker
node build-worker.js

# 重新部署
wrangler deploy

浏览器端刷新即可获取最新版本,无需用户操作。

基于 MIT 许可证发布