在github上部署个人的vitepress文档网站

我开发的BMapViewer组件正式上线了,文档使用了vitepress搭建编写,使用github Pages进行部署,现在可以正常访问了,接下来我会完整的写一遍网站部署过程。

我的文档网站:https://banyan666.github.io/BMapViewer-docs/

第一步:创建仓库,上传代码,仓库必须要开源,不然github Pages无法免费使用。

第二步:选择Settings -> Pages -> GitHub Actions

第三步:配置工作流

vitepress在github上部署:部署 VitePress 站点 | VitePress

在根目录下创建.github/workflows/deploy.yml;

创建好deploy.yml文件后,复制以下代码。

bash 复制代码
# 构建 VitePress 站点并将其部署到 GitHub Pages 的示例工作流程
#
name: Deploy VitePress site to Pages

on:
  # 在针对 `main` 分支的推送上运行。如果你
  # 使用 `master` 分支作为默认分支,请将其更改为 `master`
  push:
    branches: [master]

  # 允许你从 Actions 选项卡手动运行此工作流程
  workflow_dispatch:

# 设置 GITHUB_TOKEN 的权限,以允许部署到 GitHub Pages
permissions:
  contents: read
  pages: write
  id-token: write

# 只允许同时进行一次部署,跳过正在运行和最新队列之间的运行队列
# 但是,不要取消正在进行的运行,因为我们希望允许这些生产部署完成
concurrency:
  group: pages
  cancel-in-progress: false

jobs:
  # 构建工作
  build:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v5
        with:
          fetch-depth: 0 # 如果未启用 lastUpdated,则不需要
      # - uses: pnpm/action-setup@v4 # 如果使用 pnpm,请取消此区域注释
      #   with:
      #     version: 9
      # - uses: oven-sh/setup-bun@v1 # 如果使用 Bun,请取消注释
      - name: Setup Node
        uses: actions/setup-node@v6
        with:
          node-version: 24
          cache: npm # 或 pnpm / yarn
      - name: Setup Pages
        uses: actions/configure-pages@v4
      - name: Install dependencies
        run: npm ci # 或 pnpm install / yarn install / bun install
      - name: Build with VitePress
        run: npm run docs:build # 或 pnpm docs:build / yarn docs:build / bun run docs:build
      - name: Upload artifact
        uses: actions/upload-pages-artifact@v3
        with:
          path: docs/.vitepress/dist

  # 部署工作
  deploy:
    environment:
      name: github-pages
      url: ${{ steps.deployment.outputs.page_url }}
    needs: build
    runs-on: ubuntu-latest
    name: Deploy
    steps:
      - name: Deploy to GitHub Pages
        id: deployment
        uses: actions/deploy-pages@v4

第四步:提交代码,github pages支持CI/CD持续集成,自动化部署,点击仓库的Actions,就会看到CI/CD持续集成的工作流。

第五步:点击settings->pages查看github pages给你分配的地址,在浏览器里输入,就能看到你的静态站点了。

如果打开网站,发现样式丢失,那么是base地址配置有问题,因为github给你分配的地址后拼了你的仓库名称,所以你的base地址也要配置成仓库名称。

在.vitepress目录中的config.mts中配置base地址与仓库名称相同,修改完成后,提交代码,github自动集成,稍等查看你的网站即可。

相关推荐
独隅15 小时前
GitHub Actions 自动化运维实战:CI/CD 流水线一体化效果展示
运维·自动化·github
fthux16 小时前
装闭 RenoPit 源码解析(05):FastAPI与Celery如何执行AI装修分析
人工智能·ai·开源·github·open source·renopit
DevUI团队16 小时前
从“即兴创作”到“规格先行”,华为云码道(CodeArts)代码智能体持续深耕企业级规范驱动开发能力
前端·人工智能·后端
weixin_4316004417 小时前
NestJS 入门(3):Guard 如何挡住未登录请求?
前端·后端·学习·nest.js
kyriewen18 小时前
我用Claude Code两天干完了团队两周的排期——周报发出去那一刻我就后悔了
前端·javascript·ai编程
IT_陈寒18 小时前
JavaScript类型转换把我坑惨了,这破玩意真该早点搞明白
前端·人工智能·后端
用户9385156350718 小时前
Type vs Interface:读完这篇就没有面试官能难倒你了
前端·面试·typescript
油丶酸萝卜别吃19 小时前
jquery-ajax.js 说明文档
前端·javascript·jquery
windliang19 小时前
Claude Code 源码分析(九):子 Agent 如何分叉、继续与回到父会话
前端·javascript·面试
柒和远方20 小时前
V063: TS 面试必考:interface 与 type 的四大差异,与 LLM Harness 的自动化择优
前端·javascript