技术口
基本技能
需要熟练使用的工具
- github
- Cloudflare
- kaiser
mdbook网页部署
- 完成本地的mdbook架构, 如下
Repository
│ .git
│ .gitignore
└───.github
│ └───workflows
│ │ deploy-github.yaml
│ book.toml
│ wrangler.toml
└───src
│ │ SUMMARY.md
│ │ main.md
│ └───data
│ │ ***.md
│ │ ...
│ └───...
└───book
可以通过git init与mdbook init命令辅助初始化工作, 也可以直接参考已有的项目(如本项目).
具体的mdbook书写与应用再次不做赘述, 可以参考mdbook中文文档.
.github/workflows/deploy-github.yaml文件内容如下, 无需更改即可使用:
name: Deploy
on:
push:
branches:
- master
jobs:
deploy:
runs-on: ubuntu-latest
name: Deploy
steps:
- uses: actions/checkout@v4
- name: Setup mdBook
uses: peaceiris/actions-mdbook@v2
with:
mdbook-version: "latest"
- uses: supplypike/setup-bin@v4
with:
uri: "https://github.com/lzanini/mdbook-katex/releases/download/0.9.2-binaries/mdbook-katex-v0.9.2-x86_64-unknown-linux-gnu.tar.gz"
name: "mdbook-katex"
version: "0.9.2"
- name: Deploy
uses: cloudflare/wrangler-action@v3
with:
preCommands: mdbook build
apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }}
accountId: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }}
book.toml文件内容如下, 需要部分修改:
[book]
title = "" #请在此补充mdbook的标题
description = "" #请在此补充mdbook的描述性文本
authors = ["", ""] #请在此补充作者
language = "zh-CN"
multilingual = false
src = "src"
[preprocessor.katex]
after = ["links"]
output = "htmlAndMathml"
pre-render = true
include-src = true
[preprocessor.toc]
command = "mdbook-toc"
renderer = ["html"]
[output.html]
git-repository-url = "" #请在此补充git仓库的链接(https://github.com/thudep/*)
[output.html.search]
boost-hierarchy = 2
boost-paragraph = 1
boost-title = 2
expand = true
heading-split-level = 2
limit-results = 20
use-boolean-and = true
wrangler.toml文件内容如下, 需要部分修改:
assets = { directory = "./book", not_found_handling = "404-page" }
compatibility_date = "" #请在此补充写作日期
name = "" #请在此补充网页名(不要使用大写字母)
workers_dev = false
.gitignore文件一般来说必须包含book, 本地mdbook构建出的book文件不需要上传至远程git仓库, 在workflows中会自动构建.
- 在Cloudflare上创建token并填入github的仓库中
在Cloudflare中SAST of EP的Manage Account中选择Account API Tokens, 之后Create Token, 配置如下:
<Permisions>
Account - Workers Builds Configuration - Edit
Account - Cloudflare Pages - Resources
Account - Workers R2 Storage - Edit
Account - Workers Tail - Read
Account - Workers KV Storage - Edit
Account - Workers Scripts - Edit
Account - Account Settings - Read
Zone - Workers Routes - Edit
<Zone Resources>
Include - Specific zone - thudep.com
在创建完成后, 会显示Token, 请复制(不会再次显示), 在github的对应仓库中, 在Settings的Security的Secrets and variables的Actions中,点击New repository secret, 在Name处填入CLOUDFLARE_API_TOKEN, 在Secret处填入复制的Token。
- 在Cloudflare中填入网站链接
成功运行仓库的Actions后,在Cloudflare的中SAST of EP的Compute(Workers)中选择Workers & Pages, 可以发现已经自动创建了对应的Worker, 进入该Worker后, 在Settings的Domains & Routes中点击+Add, 输入你的网站链接***.thudep.com.