很多人第一次折腾家庭服务器,都会先卡在一个看起来很小、实际很关键的问题上:到底该怎么装服务,怎么挂域名,怎么把不同功能整理成一个像样的网站体系?
比如你手里可能已经有一台旧机顶盒、一台 N100 小主机、一个 OpenWrt 路由器,或者一块 ARM 开发板。机器是有了,Docker 也可能会一点,但真到要把 OpenList、WordPress、监控、下载、相册这些东西放上去时,很多人马上就乱了:到底是全装一台机器,还是分开装?到底先学 Docker,还是先用面板?域名又该怎么分?
这篇我就不讲那种“理论上可以怎么配”,而是按更接近真实家用折腾的方式来写。你可以直接把它当成一篇家庭多站点入门思路来看。
我这里就拿我自己现在这种思路举例:
p.godsun.pro:挂 OpenList / 网盘目录 / 下载页km.godsun.pro:挂监控主机 / 状态页 / 看机器在线情况ai.godsun.pro:挂 AI Agent 教学站 / WordPress 内容站www.godsun.pro或主域:做主站内容输出
这些东西,既可以全部装在一台机器上,也可以分开放在多台机器上。对外看起来都是一个域名体系,但背后其实可以很灵活。
一、先说结论:新手到底该怎么装?
如果你是第一次接触这套东西,我的建议很直接:
- 最省心:先用面板入门
- 最通用:学 Docker / Podman 容器化
- 最原始:直接裸装服务
这三种方式没有绝对对错,但对不同阶段的人,合适程度完全不一样。
1)面板安装:最适合纯新手
如果你现在连反向代理、容器网络、数据目录映射这些概念都不熟,那一开始真没必要硬啃 Docker 命令。面板路线最大的好处,就是先把服务跑起来,先建立信心。
比如常见面板路线,能帮你快速完成:
- 安装 WordPress
- 安装数据库
- 配置站点
- 申请证书
- 做反向代理
- 绑定域名
这条路线适合谁?适合那种“先想看到结果,再慢慢补原理”的人。
缺点也很明显:你以后换机器、迁移服务、查问题时,会发现自己很多东西其实没真正理解。
2)Docker / Podman:最推荐长期走这条路
如果你问我,家庭多站点最终最值得学的是哪种,我还是会选 Docker / Podman。
因为它有几个特别现实的优点:
- 迁移方便
- 服务隔离清楚
- 升级和回滚简单
- 一台机器上装多个服务不容易互相污染
- 以后换成 N100、云服务器、ARM 主机,迁移思路都差不多
尤其是你以后肯定不止装一个服务。今天你装 WordPress,明天想挂 OpenList,后天又想搞个监控页,再过两天想加个下载器。这个时候,容器化的优势就出来了。
你可以理解为:面板是方便上手,Docker 是方便长期活着。
3)直接裸装:不是不能用,但不建议新手一上来就这么干
所谓直接装,就是 Nginx、PHP、MySQL、OpenList、监控服务这些都直接在系统里装。这个办法不是不行,很多老手也这么干,但它的问题在于:
- 依赖容易冲突
- 升级容易把别的服务带崩
- 迁移时很麻烦
- 机器一多,维护成本迅速上升
所以如果是新手,我更建议这样理解:
- 想快速看到成果:先面板
- 想走长线:尽快学 Docker
- 裸装只在你非常确定自己为什么这么做时再用
二、WordPress 到底适合怎么装?
这也是很多人最关心的。
如果你只是想搭一个自己的内容站,像教程站、折腾记录站、个人博客,那 WordPress 依然是非常实用的选择。生态成熟,插件多,后期扩展也方便。
1)新手最稳的思路
如果你以前没碰过 WordPress,建议优先走:
面板安装 WordPress → 域名绑定 → HTTPS → 正常发文
这样你能先理解一个站点最基本的组成:
- Web 服务
- PHP
- 数据库
- 域名解析
- 证书
2)想以后方便迁移,建议直接容器化
如果你机器稍微多一点,或者你已经在折腾家庭服务器了,那我更推荐:
WordPress + MariaDB / MySQL 走 Docker Compose 或 Podman Compose
这样以后迁移时你只要带走:
- compose 文件
- WordPress 数据目录
- 数据库卷
基本就能换机继续跑。
我自己现在就更偏向这种思路,因为它跟后面挂 OpenList、监控页、下载工具这些东西的管理方式是一致的。你只要把“一个服务一个容器组”这个观念建立起来,后面会越来越顺。
三、OpenList、监控、博客这些东西,放一台机器还是多台机器?
这个问题没有唯一答案,但可以按阶段来。
1)入门阶段:先一台机器跑通
如果你只有一台机器,比如一台旧机顶盒、一台玩客云、一台 N100,那完全可以先全部放一台:
- WordPress
- OpenList
- 监控页
- 下载服务
- 反向代理
优点是简单,成本低,容易理解全链路。
缺点是只要这台机器挂了,你所有站点都一起掉。
2)进阶阶段:按功能拆机器
等你机器变多之后,就很适合按功能拆:
- 一台专门跑内容站(比如 WordPress)
- 一台专门跑文件类服务(OpenList、下载)
- 一台专门跑监控、内网工具、状态页
- 路由器或边缘机器负责网络入口、DNS、Tunnel、转发
这样做有几个好处:
- 某一个服务挂了,不会把全部站点拖下水
- 不同机器可以按性能分工
- 后期扩容更方便
- 更接近真正可维护的家庭多站点结构
3)从访问体验上看,其实都一样
这一点很多新手会想复杂。实际上,对访问者来说:
p.godsun.prokm.godsun.proai.godsun.pro
只要解析和反向代理配对了,他根本不关心这些服务背后是在一台机器还是三台机器。
也就是说,域名是你的“门牌号”,机器只是后面的“房间安排”。
四、二级域名到底该怎么规划
这一块其实特别有用。很多人后面越折腾越乱,就是因为一开始域名没有规划。
我更建议按“功能”来分,不要按机器名乱命名。
一个实用的思路
www.godsun.pro:主站 / 门户ai.godsun.pro:AI Agent 教程站p.godsun.pro:OpenList / 文件分享km.godsun.pro:监控主机 / 状态总览dl.godsun.pro:下载服务nas.godsun.pro:家庭存储入口api.godsun.pro:自己用的小接口dev.godsun.pro:测试站 / 预发布站
这样有几个好处:
- 名字短,好记
- 后面换机器不用换域名逻辑
- 别人一看就知道这个二级域名是干什么的
比如以后你本来把 OpenList 装在机器 A,上了新机器以后迁到机器 B,对外依然还是 p.godsun.pro。这样你的链接、收藏、访问习惯全都不用变。
五、域名怎么挂到这些服务上
这部分其实就是“站点为什么能打开”的关键链路。
最简单理解就是:
- 域名先解析到你的入口
- 入口再判断访问的是哪个二级域名
- 按域名把请求转发到不同服务
例如:
- 访问
p.godsun.pro→ 转发到 OpenList - 访问
km.godsun.pro→ 转发到监控页面 - 访问
ai.godsun.pro→ 转发到 WordPress / 站点容器
这里最常见的做法有三种:
1)反向代理网关统一转发
例如用 Nginx、Caddy、Traefik 之类做统一入口。这个方法最标准,也最适合后面站点越来越多的情况。
2)面板自带站点管理
如果你走面板路线,很多时候域名、证书、转发都在面板里点一点就能配。这对新手最友好。
3)Tunnel / 内网穿透做外网入口
如果你家里没有公网 IP,那就要靠 Tunnel 或类似方式把内网服务拉出来。这个时候,域名照样能分,只是入口不是你家宽公网,而是中转层。
六、给新手的一个推荐路线
如果是刚入门,我建议不要一开始就想着“我要做一个完整家庭云平台”。那样很容易把自己吓住。
更稳的路线是这样:
- 先选一台机器
- 先装一个服务(比如 WordPress 或 OpenList)
- 先绑定一个二级域名
- 先跑通 HTTPS 和外网访问
- 再加第二个服务
- 再理解反向代理和多站点
- 最后再考虑拆分到多台机器
顺序特别重要。很多人不是不会装,而是一上来把 WordPress、监控、OpenList、数据库、证书、域名、Tunnel 一次全堆上去,最后根本不知道哪一步错了。
七、如果让我现在给一个最实用的建议
我会这么总结:
- 纯新手:先面板,先有结果
- 准备长期折腾:尽快学 Docker / Podman
- 多站点规划:先按功能分二级域名
- 机器分布:前期一台也行,后期再拆
- 长期维护:尽量把入口和服务关系梳理清楚
说白了,家庭服务器最难的不是某个服务装不上,而是你有没有把整套结构想明白。当你想明白“域名是门牌、服务是房间、机器是楼层”,很多事情一下就通了。
八、下篇我准备继续写什么
下一篇我准备继续细写:家庭多站点到底怎么一步一步搭起来,会更偏实操,包括:
- WordPress 到底用面板、Docker 还是直装
- OpenList 怎么单独挂到一个二级域名
- 监控页怎么独立出来
- 一台机器和多台机器两种方案分别怎么配
- 反向代理、域名解析、HTTPS 最容易踩的坑
如果你后面也想把自己家里的几台机器整理成一个像样的多站点体系,这条路线其实很值得慢慢搭。
👇 觉得这篇有用,先收藏。
你如果手里已经有机顶盒、N100、小主机、路由器,也可以照着自己的设备先规划几个二级域名,后面再一项一项补服务,思路会清楚很多。
本文 by 数码罗记 · godsun.pro