我自托管一些常用服务已经有一阵子了,不管是本地大模型、编程助手、文档管理器,还是媒体服务器。只要什么东西能自托管,我基本都会去试试。说白了就是我爱折腾。也可以说我就是闲得慌。两个原因都占,但自托管也确实有一些明显的好处。能省下那些本来要花钱的服务费。

隐私也是个大问题。无论你做什么或使用什么服务,但只要你把东西托管在自己的设备上,对数据的掌控程度是别的方案很难比的。你不可能在手机上自托管所有服务,但有些核心服务完全可以在手机上跑。我自己就是这么做的,感觉好极了。

能自托管的Android应用,比你以为的多得多

能自托管的Android应用,比你以为的多得多

只要记得给重要数据做好备份就行

只要记得给重要数据做好备份就行

好消息是,不是每个自托管应用都得靠一台机架上的大服务器。有相当多实用的服务,其实只是带个数据库的小网页应用,而一旦你已经运行了容器环境,部署它们就很简单了:写个Compose文件,设置几个环境变量,然后启动容器。

拿Joplin来说就特别典型。我在NAS上自托管了Joplin Server,并在手机上使用普通的Joplin应用。服务器帮我同步各个设备,所以我的笔记不依赖第三方同步服务。官方提供了Docker镜像,而且跑起来之后,Android上的体验跟其他同步笔记应用没什么两样。

Karakeep 也成了我最喜欢的自托管应用之一。它本质上就是个地方,让我把网上想存的东西全扔进去,包括链接、笔记、图片和 PDF。回头能搜,能整理成列表,甚至用 AI 自动打标签和生成摘要。它支持兼容 OpenAI 的服务商和 Ollama,所以连 AI 部分都能跑在本地。

Grocy 则走向了完全不同的方向。它的口号基本上就是“你冰箱的 ERP”,听着挺离谱的,但你一看它能干啥就明白了。它能追踪你买了哪些食材,维护购物清单,帮助规划膳食,并管理家务。配套应用连上服务器后,还能加条码扫描之类的功能,这样在手机上用起来就真的很方便了。

一旦你开始自托管那些存着你绝对不能丢的数据的应用,事情就严重了。例如,你可以用 Nextcloud 替代 Google Drive,但别把 NAS 当成唯一靠谱的存储。对于重要的数据,你得给备份再做备份。那可以是放在别处的另一台设备,也可以是加密后传到便宜的云存储上的一份副本。必须有一份备份,哪怕你家里所有设备全没了也还在。

自托管让这些安卓应用真正变得更好

自托管让这些安卓应用真正变得更好

自托管应用让你掌握控制权

自托管应用让你掌握控制权

对我来说,最大的优势并不只是这些应用免费或开源。而是自托管改变的是背后这项服务由谁说了算。我可以像使用任何其他笔记应用一样在手机上使用 Joplin,但同步服务器是我自己的。我的笔记在我的设备之间同步,不用看 Google Drive、Dropbox 或其他公司的脸色来保证服务能用。

这同样适用于 Karakeep 和 Grocy 等应用。我的手机照样有普通安卓应用该有的那些方便,包括快速访问、同步、上传、通知,在某些情况下还有条码扫描或自动备份。不同之处在于,数据是传到我自己的服务器上的。我可以决定数据存放在哪里、保留多久、如何备份,以及这项服务到底要不要暴露在公网上。

还有一点让人挺踏实——整个使用体验不再被订阅或者公司的产品规划牵着走。托管服务可能会涨价、移除功能、加各种限制,或者彻底关停。自托管服务当然也可能出故障,但至少不用等别人来决定我依赖的工具还值不值得继续维护。

关键别在手机上自托管

关键别在手机上自托管

使用迷你电脑或NAS

使用迷你电脑或NAS

不过,这里有一个重要的区别。我说的是把我手机上用的服务拿来自托管,而不一定是用手机本身来做自托管。这完全是两码事。

从技术上讲,你可以把一部安卓手机变成服务器。Termux提供了一个类Linux环境,而像PRoot Distro这样的项目无需root权限就能运行Linux。人们用旧安卓手机搭出了强得惊人的服务器,我完全能理解这其中的吸引力。

对大多数人来说,尤其是对我这里所谈论的服务来说,我认为手机本身不应该作为服务器。安卓的设计围绕的是手机电源管理和应用隔离,而不是让随便什么服务器进程一直活着。操作系统会限制后台执行,限制空闲应用能继续做什么,并在沙盒里运行应用,限制它们访问系统资源。

一个更省事的办法是把实际服务跑在别的地方。就我而言,通常是一台 NAS。它也可以是一台旧电脑、一台迷你主机,或者任何一台一直开着的机器。服务器运行 Joplin、Karakeep、Grocy 或者任何我想自己托管的东西,而我的 Android 手机则充当客户端。

像 Tailscale 这样的虚拟组网工具,可以让你在外面用手机访问家里跑的服务,而配置好反向代理之后,你就能通过域名正常用 HTTPS 访问了。

自托管是个好选择

自托管是个好选择

Android 一直以开放性著称,但 Google 正在一点点把这个优势磨掉。这个系统跟订阅绑得越来越紧了,现在 Google 发布的很多主打功能,都被塞进了它的付费 AI 套餐里。遗憾的是,整个行业也在往这个方向走。而自托管正好能改变这个局面。与其把什么都交给另一个订阅服务,你可以在自己掌控的硬件上跑很多同样的工具,数据存哪儿也由你自己说了算。