Hugo|赛博小窝搭建记录

2279字
昭告天下,我有博客啦!

高强度折腾了几天后记录一下博客搭建过程。

想要做这件事

2024 年了,写博客这件事听起来有种文艺复兴的感觉,我曾经以为它衰落了。

大概半年前意外刷到一些博客,看人们记录生活日常,旅游,技术分享,磕 cp……大大小小的事,长长短短的文,一个一个友链点过去,仿佛逐渐展开隐藏地图——早期网络时代的遗迹,被一些路过的冒险者捡起来拍拍灰,又垒出了新的样子。

关于 " 为什么要写作 " 有诸多理由无需我再次复述,而且,静态网站的内容与外观完全掌握在自己手里,还可以折腾些有趣的东西耶——

“我也想要!”

观望许久后,突然地就在一个普通的周六下午开始了 Hugo 博客搭建,跟随 塔塔的搭建教程 基本上还算顺利的搭起了架子。也不是很难嘛!

  • 注:本人没有代码基础,遇到问题基本靠搜索和 AI 解决,苦恼过但也没遇到太大的困难,如果你也对博客蠢蠢欲动的话,不用犹豫担心,搭就是了(。

前期准备的前期:Homebrew

使用 Macbook 来搭建,万万没想到花时间最久的竟然是安装 Homebrew(扶额)… 大概地记一下我的过程,说不定能有帮助呢!

Homebrew 简单来讲就是一个软件包管理工具,VS Code Github Desktop 可以直接下载安装程序,但 Hugo Git 通过 Homebrew 命令来安装比较方便。我的理解是 Homebrew 就像胶囊咖啡机,把水箱和电接好,就可以拆封冲煮咖啡胶囊(安装包)。

Homebrew 官网 复制命令行,打开系统自带的【终端】粘贴进来,然后回车就会开始安装。看到 Installation successful 之后,不要关闭窗口! 不要关闭窗口!记得去读最下面的【Next Step】按照说明操作,多运行两行命令好来设定 PATH 才能正常运行!(为此付出了个多折腾一个小时的代价)

# Next Step后的说明内容大致如下
- Run these two commands in your terminal to add Homebrew to your **PATH**:

    (echo; echo 'eval "$(/opt/homebrew/bin/brew shellenv)"') >> /Users/yourmacsname/.zprofile

    eval "$(/opt/homebrew/bin/brew shellenv)"

- Run **brew help** to get started

另外,如果运行 brew 命令时出现 zsh: command not found: brew ,可以看 这里 ,但大概是需要重新安装。

Homebrew 安装过程中的其他问题

Q:停留在 Downloading Command Line Tools for Xcode 很久没有动

打开【系统设置>通用>软件更新】,可以查看下载进度,下载完成后点击【现在更新】即可(cr:josh-ryn

Q:收到如下报错:

fetch-pack: unexpected disconnect while reading sideband packet
fatal: early EOF
fatal: fetch-pack: invalid index-pack output
Failed during: /usr/bin/git fetch --force origin

搜索半天最后挪到信号好一点的房间重新运行安装命令就好了……但也已经输入了 这里的命令行 ,所以都试试,应该是网络连接的问题。

git config --global user.email yourgitemail@example.com
git config --global http. PostBuffer 5242880000
git config --global http.sslVerify "false"

获得物品:赛博小屋一间

Homebrew 安装完成后运行 brew instal hugobrew install git 即可分别安装 Hugo 和 Git 到电脑上,运行 hugo version 命令可以检查 Hugo 是否成功安装。

然后跟随教程一步一步完成 Vercel 部署、主题安装与 Github 推送。

我安装时的 Hugo 版本是 0.123.8,在使用部署完并用 Github Desktop 克隆到本地后,本地 Hugo 文件夹内默认的主题是 Anake,使用 VS Code 修改 config.tomltheme = "meme" ,保存后预览站点即显示为 meme 主题。

MacOS 右键没有 Git bash here,需要在本地 Hugo 文件夹上【右键>服务>新建位于文件夹位置的终端窗口】,然后运行 hugo server 生成本地预览站点。

或者在 VS Code 中进行:打开本地 Hugo 文件夹,右上角四个图标,点击从左往右数第二个(方框下面有白条的),就可以调出终端,并在这里运行 hugo server 等命令。

当当——!到这里就完成了基本的搭建,然后来给赛博小屋挂个门牌吧——

域名购买与 DNS 配置

这一步并不是必须的,如果你不介意使用 Vercel 分配的域名。我是在 Dynadot 上购买的域名,支持支付宝比较方便,另外 namesilo 用的人好像也蛮多。

买好域名后,根据塔塔教程中的 Q&A 部分去 Vercel 进行设置,记得把 config.toml 中的 baseURL 修改为你的域名,然后推送到 Github 即可。

如果想用 blog. example. com 这样的域名的话,往后看。

关于域名价格

很多域名购买便宜但续费很贵,如果想长期使用的话还是要关注一下续费价格…… 列一下我筛选的综合来看比较划算(并愿意使用)的域名后缀,仅供参考:

.icu .one .xyz .cyou .cc .vip
购买 19 36 15 18 31 34
续费 75 105 83 75 71 42

另:如果因为涨价等原因需要更换域名服务商的话,可以参考一下这篇博文:HUGO | 关于更换域名服务商这件事,我需要做什么 (虽然我短时间内没有这个需求,但先存一下)(看了才知道 icu 以前续费居然只要 50!心痛)

请问要来点子域名吗

我们购买的域名是 example.com,在此基础上,通过添加前缀可以获得多个子域名(不确定是否有数量限制),需要在 DNS 设置中添加。

登陆 Dynadot 账号,左侧 Manage Domains,点击已购买域名的 DNS Settings,选择 Dynadot DNS,Domain Record 这一块不填写内容,在 Subdomain Record 下面,填写你想要设置的前缀(如 “blog”),Record Type 选择 CNAME,后面填写 cname. vercel-dns. com ,保存设置。然后去 Vercel 博客项目的设置面板,选择 Domains,填入域名 blog. example. com,选择三个选项中最下面的那个,add 后等待生效即可。

build-my-blog-1

接下来,就是 装修 写啦!

博客搭好了,我要写什么呢?第一个念头是:好像没什么可说的。

但真的没有吗?其实有好多东西,在「想讲」与「这值得记下来吗」与「要不算了」之间游移着,然而大部分都在我不断反问自己「有必要吗?」后被自暴自弃地推到了放弃的那一边堆积着,没放弃的也大多是磕磕绊绊的半成品。我一度以为我的表达欲消失了,但它或许只是被我粗暴地压抑了,被我不知道哪来的价值标准困住,被粗暴地删减,欲言又止,留下了「我不想说」的错觉。

练习讲废话后慢慢发现,我大概还是有很多话想要说的。

用 Obsidian 来编辑博文

虽然在 VS Code 里就可以新建 post 并去写。但……我总会想跑去折腾一下代码,加上字体有些小,于是打开了 obsidian 当作编辑器。

左下角打开其他仓库,选择 content 文件夹,即可导入目录下的文件夹和 md 文档进行编辑了。我另外把之前仓库里 Easy Typing 和 Linter 插件复制粘贴了过来,打开了严格换行的设置。

顺手搜索了一下别人的流程,在 .gitignore 中添加了 .obsidian 来避免把 obsidian 的配置插件等文件上传到仓库。(cr:木木木木木

虽然还存在几个痛点,比如要通过命令行新建文档,但以后再折腾吧……

ㆆᵕㆆ…