HomeLab搭建:博客篇
上回书说到,因为CloudCone暴雷,导致我部署在上面的博客彻底损毁,只有从typecho里导出的备份得以幸存,于是,HomeLab搭建计划就此提上日程。
第一步是恢复博客,自然还是沿用之前的typecho,但安装方式从之前的lnmp改为1panel面板部署,这样可以通过1panel的快照备份功能将网站数据保存到同局域网下的NAS里。typecho可从1panel应用商店里直接安装,虽然版本仍停留在v1.21,但以typecho的更新速度,版本稍稍落后一些也没什么。数据库我选择了PostgreSQL,主要是我要运行的其他服务也需要PostgreSQL,否则typecho还是推荐使用MySQL。
绑定域名我并没有直接在1panel里设置,运营商对家庭网络部署网站监管还是比较严的,因此我使用的是cloudflared建立隧道进行反向代理,cloudflared也可以在1panel商店里直接安装,安装时需要填入cloudflared的token。先登录到Cloudflare官网,左侧栏进入到Zero Trust页面,选择网络-->连接器-->创建隧道,隧道类型选择cloudflared,隧道名随意,在安装并运行连接器页面选择docker安装,复制安装代码,提取出最后面那一长串token填入到1panel里即可。当cloudflared安装完成后,就可以在cloudflare官网设置反向代理了。
设置时遇到两个坑。
一是cloudflare的反向代理,以往使用cloudflared,我都是反向代理主机的回环地址,即127.0.0.1,但因为1panel应用商店内都是用docker安装的,所以设置代理时需填入docker网桥的网关地址,网关地址可使用命令docker network inspect bridge --format='{{json .IPAM.Config}}'获取,Gateway后的即是网关地址。
二是typecho的伪静态设置,导入博客备份后,我发现博客像是缺少渲染一般,整个页面只有文字和超链接,一开始还以为是cloudflare缓存还没完成,后来局域网内访问也是如此,才发现是typecho伪静态设置的问题,解决方法是登录到typecho管理后台,选择设置-->永久链接,是否使用地址重写功能选择启用即可