更新的契机

这几天考完试放了快10天的假闲的无聊就想着折腾一下我的网站

但是更新啥想了半天没啥思路但是突然想到我以前买的树莓派4b和sdr接收机一直在吃灰然后手上还有个DHT11温湿度传感器灵光乍现啊!

为啥不用树莓派和sdr在本地部署全频段收音机和ADS-B追踪航空器呢,感觉很帅啊!

然后顺便在本地部署一下ai服务(呃呃呃虽然树莓派也跑不了什么很大的模型用的是qwen2.5-1.5b)

还有部署一下文件管理服务,直接变成nas当网盘用

最后加上一个温湿度传感器监测一下房间(暴露癖犯了)

最后完善一下主题,让主题更风格化一点。

完美

纪念照

主页
后台的一部分
后台登录页面

开发方式

前端与后端插件由openai-codex开发

然后自己主要折腾一下服务器运维,环境配置部署一下脚本debug啥的

总体来说这次更新一共花费4天共30个小时左右。

主题更新

主要的视觉风格是模仿windows98系统的UI

然后往(想象中的)Y2K,平成复古,极繁主义的方向去靠

但是本人又不太喜欢桌面空空荡荡的所以就固定了资源管理器作为显示文章和个人资料的地方

主题所有的地方都是可以互动的(应该吧)有音效,动画,计数器啥的并且加入了CRT显示器效果模拟的按钮,收音机按钮,adsb按钮,sdr模式切换按钮

本地硬件部分

本地部分的话就是raspberrypi4b+Nooelec NESDR SMArt v5+DHT11温湿度传感器 如下图

SDR天线的话毕竟住在公寓就选了1090Mhz接收用6.9cm的1/4波长天线放在窗外,所以短波中波接收就别想了,76-90Mhz的fm广播还凑合。

整体结构

浏览器

HTTPS 443


VPS 主节点
Nginx + WordPress + MariaDB

├── 主站 kokorotsuki.com
├── 收音机 radio.kokorotsuki.com
├── 网盘 drive.kokorotsuki.com
├── REST API 与 Cloud Bridge(给后台监控用的)
└── sing-box / Hysteria2(呃翻墙用的)

WireGuard (加密隧道)


Raspberry Pi 本地节点

├── Monitor Agent(这个也是给后台监控用的)
├── Ollama(本地AI)
├── File Browser(简而言之呃 网盘)
├── DHT11 (用来监测温湿度)
├── Radio API(网站主题上收音机用的接口)
├── OpenWebRX+(宽频网络接收机)
├── readsb / tar1090(adsb)
└── WordPress 备份与镜像

没错😁 还在vps上部署了Hysteria2代理,毕竟我vps流量额度一个月3TB呢,拿来翻墙物尽其用一下。

过程中遇到的困难

那真是一大堆,先是因为有太多组件了加新东西的时候动不动就端口冲突,然后sdr又不能同时在收音机和adsb两个模式下使用因为频率隔太远了,然后又是vps跟本地通信的延迟只要一放音乐或者传文件就2000多ms直接把ssh都卡掉线了,然后又是收音机的音频链路导致底噪大的吓人,还有比如镜像站只要一同步就掉线啊之类的莫名其妙的问题。光是debug估计就花了我20个小时😭

技术栈

网站与应用: WordPress、PHP、HTML、CSS、JavaScript
本地服务: Python、Ollama、File Browser、OpenWebRX+、readsb、tar1090
数据库: MariaDB
基础设施: Nginx、Docker、systemd
网络通信: WireGuard、sing-box、Hysteria2、REST API

结尾

反正折腾的挺开心挺有满足感的

不过现在折腾起来比以前容易太多了所以只能折腾更复杂的结构才更有满足感

高中的时候想搭博客光是部署个Wordpress加个内网穿透让我到处翻教程那个时候连nano咋保存都不会都得找教程走一步查一步属于是😅搞了几天才成功虽然爽不过也挺心累的