从树莓派到全栈服务器:打造稳定可靠的个人实验室
一位莫斯科的数据工程师在两年内,将基础的Linux知识逐步升级为功能完整的家庭实验室。最初仅使用一台树莓派5和一块1TB SSD通过SMB共享搭建环境,随后逐步扩展至多盘位NAS系统,并最终迁移到Intel Core i7-13700以应对高负载任务。这一转型使他能够自托管关键服务,大幅降低对云服务商的依赖。
最初的树莓派5配置虽支持四个SSD的SATA接口,但受限于平台性能——4K HEVC转码能力弱、内存不足,且SD卡在数据库存储场景下稳定性差,迫使他进行彻底重构。
新架构配置
- CPU:Intel Core i7-13700(LGA1700)
- 主板:华硕ROG STRIX B760-I GAMING WIFI(迷你ITX)
- 内存:32 GB DDR5 Kingston 5600 MHz
- 固态硬盘:ADATA LEGEND 860 1 TB PCIe 4.0
- 机箱:Jonsbo N3,配备8个热插拔硬盘槽位
- 电源:750W 80+铂金认证
操作系统采用无图形界面的Fedora,通过bash脚本、systemd定时器实现自动化管理,终端使用zsh搭配Oh My Zsh与Powerlevel10k主题。所有服务均以Docker容器形式运行,并由Portainer统一管控。
自托管服务生态
部署的应用覆盖核心使用场景:
- Jellyfin:支持转码的媒体流服务
- Navidrome:音乐服务器
- filebrowser-quantum:文件管理器(支持14TB存储)
- Immich:自建照片与视频备份系统
- mscmanager:Minecraft与泰拉瑞亚游戏控制面板
- Transmission:BT下载客户端
- Vaultwarden:支持SSH密钥的密码管理器
- dnsmasq:本地DNS,用于域名重定向
- Home Assistant:物联网设备集中管理
- Termix:SSH连接管理工具
- WireGuard:安全远程访问VPN
- Nginx:反向代理(计划迁移至Caddy并集成ACME证书自动申请)
网络架构与远程访问
网络设计确保本地与远程访问均稳定可靠:
- Cloudflare域名指向路由器静态IP(192.168.0.1);
- 外部端口443转发至内部路由器(192.168.2.1,运行OpenWRT + Xray);
- 服务器上的反向代理(192.168.2.10)根据子域名路由请求(如immich:2283);
- Docker内运行的本地dnsmasq将特定域名解析为内网IP,上游DNS使用1.1.1.1与8.8.8.8;
- 路由器DHCP自动分配本地DNS给所有设备。
防火墙限制外部对内网端口的访问,仅允许本地回环通信。即使ISP出现故障,家庭内部域名仍可正常解析,保障服务持续可用。
数据备份与容错机制
不使用RAID,而是通过rsync脚本配合systemd定时器,在三个不同位置保留五份数据副本。脚本实时监控/etc等关键目录及热配置文件变更,未来还将集成Git版本控制。
深入学习网络基础:OSI模型、VLAN划分、交换机配置。编辑工具选用LazyVim,掌握高级命令行操作以实现系统精准控制。
核心经验总结
- 从树莓派升级至x86架构,有效突破性能瓶颈,无需妥协;
- Docker结合Portainer极大简化了自托管服务的部署与运维;
- 本地DNS+反向代理实现内外网无缝访问体验;
- Bash脚本与systemd自动化备份流程,显著降低数据丢失风险;
- 自托管架构在互联网不稳定时,能有效减少对外部服务的依赖。
这套基础设施特别适合中高级技术人员,希望完全掌控自身数据与服务的用户。
— Editorial Team
暂无评论。