Nibbles Blog Nibbles Blog
  • 专题汇总
    • 技术学习
    • 个人成长
    • 运营技能
    • 自媒体
    • Minecraft
  • 推荐
    • 好物推荐
    • APP推荐
  • 关于我
    • Nibbles Studio
  • 友情链接
首页 › 技术学习 › VuePress —— 全流程建立博客的另一灾备方案

VuePress —— 全流程建立博客的另一灾备方案

Avatar photo
Nibbles 尼布
24 8 月, 2024

Another disaster recovery plan for the blog: VuePress. I want to share VuePress programing experience.

为什么要做这一方案?

作为站长的我们首先要确保博客业务的连续性,还有文章等数据的备份。次之还有备份站运营成本上的考虑,其中本站采用的是知名的WordPress程序,在Docker容器中运行,虽然说容器本身迁移方便,但是如果这台VPS一时出问题了,那么还是要买且迁移到新的VPS来,对于维护成本来说还是有点高的。

而且现在的Serverless开发平台(也就是vercel、netlify、zeabur)免费计划中跑VuePress静态站点绰绰有余,然后静态站前端代码从GitHub 仓库里抓取,每次我们对博客的修改,从本地git到仓库中,然后触发Serverless的重新构建机制,域名的话可以用*.eu.org,这样整套流程下来没有💴上的成本,且网站都在国外也不会因国内原因导致无法访问甚至封禁,本地也保存了网站的数据。

写在建站前你必须要的

  1. 基本的电脑操作知识(知道怎么装软件,知道怎么复制粘贴,会用代码编辑器的基本功能即可)
  2. 有个合适的国外proxy,Watt Toolkit中也有免费的Github加速选项可以试试
  3. 有Github账号(新手注册登录即可)
  4. 合适的翻译工具,最好支持截图翻译
  5. 会写MarkDown文件
  6. 一个能随时回答你发的问题的AI,如kimi.ai

具体实现流程

1、NodeJS环境部署

NodeJS的版本不建议太高,优先选择LTS(长期支持版本),博主选用的是v18.20.4(LTS x64)

【挂proxy】官网下载:https://nodejs.org/dist/v18.20.4/node-v18.20.4-x64.msi
中文镜像站:https://npmmirror.com/mirrors/node/v18.20.4/node-v18.20.4-x64.msi

直接默认安装位置即可,NodeJS程序本身只有几十MB。在安装过程到 tools for native modules 步骤的时候,不要勾选,然后下一步直到安装完成即可,安装完后还需重启系统。

检查版本,【Win+R快捷键输入cmd调出终端】

node -v   #开头是node,不是nodejs!

出现v18.20.4即安装成功。

本篇我们采用npx安装,类似于npm,它们都是NodeJS里预置的软件包管理器。什么意思倒不用在意,只是知道它们是指令的开头即可。

然后为了后续的访问速度还要换镜像源:https://nibbles.cyou/shift-source.html

2、VuePress 安装

博主选择的是带主题的vuepress-reco:https://theme-reco.vuejs.press/

打开cmd

创建一个文件夹(这路径上不能有中文)并让cmd执行路径指向此处:

法一【Win11/10】:找到系统自带的“终端”软件,在设置中更改默认为cmd,然后直接在文件夹里右键,选择“在终端中打开”。若没有可以去Microsoft Store里下载“终端”这个软件。

VuePress —— 全流程建立博客的另一灾备方案-Nibbles Blog

法二【更简单】:更改路径栏为cmd,则打开的cmd直接就指向这个路径了。

VuePress —— 全流程建立博客的另一灾备方案-Nibbles Blog

npx命令安装并初始化

文档里,revili可视化搭建部署起来还是会有点问题。所以直接用下面的一行命令(npx开头的)

# 初始化,并选择 2.x
npx @vuepress-reco/theme-cli init

输入后待其下载完后会进入初始化选项

VuePress —— 全流程建立博客的另一灾备方案-Nibbles Blog

第一问中:新的目录指的是在cmd指向的文件夹下再新建一个文件夹。(Y/n),若是的话需要先开大写锁定(键盘上的capslock)后打y,若不是就n。一般情况下空文件夹里创建此项目可以直接n。

除了最后一个问题和第一个问题,其他均可后期更改 config.ts 里的配置改变。

3、配置VuePress-reco主题

准备工作与层级关系

我喜欢用WebStorm来改配置,当然你使用VSCode也行,不过最好不要用“记事本”!

为了让我们的网站在更改后能及时看到,可以先dev运行下。在编辑器里打开文件夹后,打开 package.json 即可看到运行的按钮:

VuePress —— 全流程建立博客的另一灾备方案-Nibbles Blog
VuePress —— 全流程建立博客的另一灾备方案-Nibbles Blog

初次运行成功时候,看到下方的编辑器内置的终端窗口中会弹出两个链接:

VuePress —— 全流程建立博客的另一灾备方案-Nibbles Blog

Local所指的是只能本地电脑访问的,
Network所指的是指内网里的设备都可以访问的,但外网无法访问。

改配置的时候,建议把浏览器窗口和编辑器窗口精简化,并排成两列的布局

VuePress —— 全流程建立博客的另一灾备方案-Nibbles Blog
要更改的地方配置文件
公告侧边弹窗config.ts 45行-98行bulletin
首页模块及内容README.md Frontmatter
首页顶部导航栏config.ts 33行-44行navbar
网站logo和作者头像.vuepress/public 替换同名文件,logo.png和head.png
首页右上角固定的Github地址指向config.ts 第16行docsRepo

这里只是一部分常用的需要改的地方

⭐ 配置文件更改时候最重要的是: 注意层级 !让我们解析一下config.ts的前半段:

VuePress —— 全流程建立博客的另一灾备方案-Nibbles Blog

各种不同颜色的圈圈,同样的颜色代表此为成对出现的。

值得一提的是,作者在原文档中部分的冒号为全角的冒号,他是打错了,但该配置的时候大家要认清并改过来哦! 半角就是英文输入法下输入的,全角是中文输入法下的。半角: ,全角:比较紧凑要改!

尽量各条语句之间开头对齐,用缩进清晰明了地展示层级关系。

能改的仅有引号内的内容,若要删去或者添加需要按照格式整对注释或添加,有的参数不用的可以移到注释里。快速注释方法:【CTRL+/】

参数名称一般对应着这东西到底是用来干嘛的,可以借助截图翻译软件通过单词意思来填上合适的内容。

MarkDown中的Frontmatter

Frontmatter即是MarkDown文件中被两行 --- 括起来的部分

文档中关于Frontmatter首页设置:https://theme-reco.vuejs.press/docs/theme/frontmatter-home.html

也是要按照格式一个个填,不过没有了引号和,结尾,但是一定要注意缩进。文档页面中最后有全部都应用上去的示例,可以先全部复制上,然后再删改。

注意,Frontmatter是会被主题解析的,各部分参数会显示到指定位置。—框起来以外的位置就是README.md的正文了,也就是MdContent module显示在首页上的内容。

4、Vite生成静态网页目录

VuePress —— 全流程建立博客的另一灾备方案-Nibbles Blog

点击此按钮开始build静态文件,当终端出现绿色的done的字样即代表生成完毕。(VSCode类似)

生成到了 .vuepress/dist 这个目录下面。

注意,每次更改(比如加文章、改样式)都需要重新生成一遍!

5、上传到Github

为了我们后续部署到Serverless平台,所以此处我们先利用Git上传到Github上。

Git官网下载:https://github.com/git-for-windows/git/releases/download/v2.46.0.windows.1/Git-2.46.0-64-bit.exe 安装过程直接一路下一步下去。

Github上创建一个new repository:https://github.com/new ,并对此命名,然后Create repository确认创建。新创建的里面不会有什么东西,但给了git的代码教程:

VuePress —— 全流程建立博客的另一灾备方案-Nibbles Blog

Git要加速使用系统proxy的话可以看:https://nibbles.cyou/shift-source.html

如果你不太想输入很多命令的话(看着不多,其实后面git add的时候需要加很多文件),可以试下Github Desktop,安装后登录账号密码,然后把仓库拉取到本地并作为同步文件夹。

之后把整个项目文件夹(不只是.vuepress)全部拖到同步文件夹中让客户端上传上去。在提交的时候需要自己写一点commit日志,比如如上的first commit。

以后每次只要网页目录有变动,就及时使用git或Github Desktop上传。

6、部署到zeabur

zeabur:https://zeabur.com

邮箱注册后会发送登陆链接到你的邮箱,从邮件中的链接进去即是后台。

创建项目→新建服务→Github(从Github仓库部署)→选择刚创建的存网页的仓库

然后趁机还没运行完毕,下拉找到设置→根目录,修改为/.vuepress/dist

回到上面”重新部署“,等待片刻,当出现运行中并有绿点则代表部署成功。

如果需要测试访问,可以直接使用一个zeabur.app的二级域名:下拉,网络→公开→生成域名→填入你喜欢的前缀,稍等下就可以使用 填的前缀.zeabur.app 来访问了。

7、免费域名eu.org

免费获取 EU.org 顶级域名丨岚天小窝

https://blog.ltya.top/posts/eu-org.shtml

更改为自己申请到的eu.org域名:下拉,网络→公开→自定义域名→到解析服务那里CNAME解析,如下

VuePress —— 全流程建立博客的另一灾备方案-Nibbles Blog

稍等片刻,即可直接访问了~


看到这里的你应该能手搓出一个VuePress的站点了吧~ 还有问题的话不妨问问AI哦。

既然有了自己的站点,那就努力更新内容吧!

声明:本站原创文章文字版权归本站所有,转载务必注明作者和出处;本站转载文章仅仅代表原作者观点,不代表本站立场,图文版权归原作者所有。如有侵权,请联系我们删除。
GitGithubServerlessVuePresszeabur
1
1
Avatar photo
Nibbles 尼布
向着终生成长者迈进!
赞赏

评论 (1)

取消
  • Avatar photo
    Nibbles 尼布

    现在备份站可以直接在底部导航栏点击“Backup“查看啦~

    来自浙江
    11 月前 浙江 回复

猜你喜欢

  • 运算符 | Java语言基础
  • 变量详解 | Java语言基础
  • 初识 Java 及数据类型 | Java语言基础

公众号同步更新

🔍微信搜一搜“尼布技术志”
  • SiteMap
  • Umami
  • CSDN
  • xLog
  • Substack
Copyright © 2022-2025 Nibbles Blog. Designed by nicetheme. 浙公网安备33038102332481号 浙ICP备2024120131号
旗下产品: 匿补阁 个人工作室主页 Nibbles AI 匿补阁小商城 匿补阁CardShop NavP
  • C语言4
  • Java4
  • python2
  • AI2
  • 公众号2
  • 专题汇总
    • 技术学习
    • 个人成长
    • 运营技能
    • 自媒体
    • Minecraft
  • 推荐
    • 好物推荐
    • APP推荐
  • 关于我
    • Nibbles Studio
  • 友情链接