是时候记录下一些东西了。
这个博客的内容可能并不会特别的新颖,或者切入角度与他人的不同;对我个人而言,值得分享的东西并没有那么多。我无非是把别人的东西再自己做一遍,做到自己会了而已。所以,就把这个个人博客当作一个记事本来用,至少做过的东西,不要忘却。
以下是搭建这个博客时的一些碎碎念,基本上没有什么用,感兴趣的话看看得了.jpg
不是很会写文章,很容易写成流水账。
准备这个静态页面的记事本用了非常长的时间,包括从构建框架,主题选择到最后的部署为止都花了不少心思。
虽然从一开始的时候就决定了是静态博客的形式,因为并不需要留言和阅读统计功能,况且在国内搭建的话这些要另外申请资质,而且也早早的定下了使用 Hugo 来搭建博客,Markdown撰写文案的想法,但是在大学学期内仍然是未能成型。
原因很简单,所谓的“完美主义”,也就是强迫症。
20年左右,我开始比较深入的接触服务器相关的内容,包括一些基础的服务器运维和Linux的使用,也做过一些比较简单的开发,比如管理CSGO游戏服务器的QQ机器人。在这个阶段,我开始搭建自有的Git服务器,自有的IM服务器,自有的…反正在那时,基本上就是“如果能自己给自己提供服务,那就不要依赖于公共服务”的思想。
这时候我还有“是不是要做一个个人博客来记录一些东西”的想法,可那时忙于各种事情,根本没有时间静下心来写博客,于是就搁置了。
后来构建LFS的时候,我整理了几篇常用的文章,突然想到个人博客的事情,于是又动起了搭建的心思;然而立刻在“想要尽善尽美”的第一次搭建下败下阵来。
我虽然自认为不是一个完美主义者(或者是强迫症),但我在维护服务器的时候有很多强迫症一般的操作,比如:
- 绝对手动构建 如果能手动搭建那么一定手动搭建
- 严格遵循FHS
- 一台物理机上的服务要么全部是docker,要么没有docker
- 追求最好的效率,尽量少的中间层
- 无论什么情况下,只要提供了
Unix Socket就一定会采用/run/socket或者/dev/shm/socket的形式联通服务 - 对再不起眼的服务器也要开启公钥验证,设置nftables并严格限权
- 以及,绝对不使用上层的
ufw,firewalld而使用更底层的iptables和nftables进行防火墙构建
诸如此类,当时经手的服务器比较少,我自己手动折腾还折腾的过来;后来接触了某个PVE集群的大佬们,在他们的感化下我开始学习各种自动化套路,然后就对博客的搭建有了一套比较成熟的想法:
- 用自建的Gitea为Hugo文章提供托管服务
- 使用Drone对每次提交进行构建和部署
- 使用Vault存储Drone的部署密钥
- Postgresql作为全局后端数据库,储存Gitea,Drone,Vault的所有数据
- 自行设计博客的Theme
然后就因为Drone必须在docker里面运行,导致触碰了强迫症第三条;为了解决强迫症第三条,又在年初学习了手动搭建Kubernetes的相关知识,终于在PVE节点上的三台虚拟机里面搭建起一个损耗极高的集群——
然后因为损耗高导致强迫症第四条犯了,又不了了之了,这便是我的第二次失败。
两次失败之间,开始学习CSS的基本知识,打算设计Hugo的博客主题,然而自己的懒惰使得这一切都化为泡影。
眼下毕业了,有了一定的空闲时间,准备考研之余,又想起这件事情。一想起之前两次失败,不禁哑然失笑,决定先搭建起一个能用的雏形再说。
于是这就是这个博客的由来,过程颇有点虎头蛇尾,但不管怎么说,在你看到这篇文章的时候,它已经跑起来了。我对现在能跑起来的这个博客很满意,对于临时使用的Fuji-v2这个主题也很满意(确信),但是对于这个博客本身而言,我的目标始终是搭建一个尽善尽美的,有着自己的风格的(真的能做出来么)的博客。
这个博客的内容可能并不会特别的新颖,或者切入角度与他人的不同;对我个人而言,值得分享的东西并没有那么多。我无非是把别人的东西再自己做一遍,做到自己会了而已。所以,就把这个个人博客当作一个记事本来用,至少做过的东西,不要忘却。
好记性不如烂笔头,我的记性已经退步不少了。