When a developer posted "My server is a phone now" on Hacker News this week, it hit 166 points and 68 comments in five hours. The idea sounds absurd — running your personal infrastructure on a phone instead of a VPS — but the execution is surprisingly sophisticated, and it raises a fascinating question: are we ignoring the most powerful server most of us already own?
The developer, who goes by seg6, replaced a Hetzner VPS with a rooted CMF Phone 1. Eight ARM cores, 8 GB of RAM, 128 GB of flash, Wi-Fi 6, a 5G modem, and a built-in battery backup — hardware that was sitting unused in a drawer. The phone now runs a remote browser service called Surf, a personal finance tracker, a screen sharing app, and several smaller web apps, all deployed from Git with Ansible.
Why a Phone Makes a Surprisingly Good Server
The economics are the obvious draw. A Hetzner VPS with dedicated CPU costs enough each month to make personal projects feel like a financial commitment. The phone was already paid for. But the hardware advantages go deeper:
- Built-in UPS: The battery provides automatic power backup. No need for a separate UPS device.
- Low power consumption: Phones are designed for battery life, drawing a fraction of what a mini PC or NUC uses.
- Cellular fallback: A 5G modem means the server stays online even if your home internet drops.
- Silent operation: No fans, no noise. Perfect for a home environment.
- Integrated display: A screen for recovery and monitoring, built in.
The CMF Phone 1's spec sheet reads like a mini server: 8 ARM cores at a time when ARM is eating the data center, 8 GB of RAM (more than many VPS instances), and flash storage that's fast enough for most workloads.
The Architecture: Termux as the Host OS
The most interesting technical decision was keeping stock Android and using Termux as the host operating system rather than trying to flash a traditional Linux distro. The first attempt — installing postmarketOS — was a disaster. Wi-Fi, Bluetooth, and hardware acceleration were all broken. The phone was soft-bricked at one point.
The lesson: Android already has working drivers for every piece of hardware. Throwing that away to get a more conventional userspace was the wrong trade.
Instead, Termux provides OpenSSH, runit (for service supervision), Caddy (for reverse proxying), Cloudflared (for tunnel-based ingress), and package management. Termux:Boot starts everything after reboots. Tailscale provides a stable private address for SSH access from anywhere.
Each application runs in a Debian filesystem mounted via chroot (after rooting) or proot for lighter services. The key insight: the applications get the Linux filesystem they expect, while Android continues handling hardware-specific work.
Getting Traffic to a Phone Behind Home Internet
This is where most self-hosters give up. The solution is elegant:
- Cloudflare Tunnel handles HTTP ingress. One outbound connection from the phone, Cloudflare routes hostnames through it. No inbound router rules needed.
- Tailscale handles administration. The phone gets a stable private address that follows it across networks.
- Cloudflare DDNS handles direct connections that need low latency (like the remote browser).
The phone can be unplugged, moved to a different network, and reconnected — and everything comes back online automatically. That's something no traditional home server can do.
Infrastructure as Code, Not Shell History
The entire setup is managed by Ansible. Versions, service definitions, routes, power settings, secrets, and health checks all live in a Git repository. Deployment is a single make phone command. This is not a pile of SSH commands — it's reproducible infrastructure.
Android's battery optimization is the biggest enemy of a phone-as-server. The Ansible playbook applies an Android host profile that:
- Installs a persistent wake lock
- Disables light and deep idle
- Exempts Termux, Termux:Boot, and Tailscale from background restrictions
- Disables the child process limiter
- Prevents Wi-Fi suspension
- Configures Tailscale as an always-on VPN
The recovery chain is the key: Android boots → Tailscale VPN reconnects → Termux:Boot starts runit → runit starts services → health checks verify. The phone can reboot without human intervention.
What This Means for Self-Hosting
This is part of a broader trend: edge computing at home is getting serious. We've been tracking this space closely with our own experiments running AI agents on a Raspberry Pi 5. The phone-as-server approach takes it further by using hardware that most people already have.
The comparison with our own Raspberry Pi setup is instructive:
| Feature | Raspberry Pi 5 | Rooted Phone |
|---|---|---|
| CPU cores | 4 ARM (Cortex-A76) | 8 ARM (varies) |
| RAM | 4-8 GB | 6-16 GB |
| Power draw | ~5-15W | ~2-8W |
| Built-in battery backup | No | Yes |
| Cellular fallback | No (needs dongle) | Yes (built-in) |
| Cost (if you own one) | $80+ | $0 |
| Display | No (needs HDMI) | Yes (built-in) |
| Storage | MicroSD (fragile) | UFS/eMMC (durable) |
The Pi wins on GPIO pins, community support, and ease of installing a standard Linux distro. The phone wins on almost everything else — if you're willing to root it.
Should You Try This?
If you have a reasonably modern, rootable ARM64 phone sitting unused, this is more practical than it sounds. The main caveats:
-
Rooting is required for the
chrootapproach that makes performance acceptable for demanding workloads like a headless browser. - Android updates can break things — a future update might change battery management behavior or break Termux.
- Chroots are not security boundaries — all residents share the kernel. Don't run untrusted code.
- Software rendering is slow for graphics workloads. The boring path without GPU acceleration may perform better than trying to bridge to the phone's GPU.
- Backups are critical — the phone's flash storage is not designed for server-grade reliability.
But for a handful of personal services, especially when the alternative is paying $10-50/month for a VPS, it's a genuinely useful option. The developer started trying to save money on a VPS and ended up with a battery-backed, cellular-fallback, Ansible-managed server that lives in their pocket.
The Bigger Picture
The phone-as-server movement is part of a shift toward edge computing that's happening at every level. Cloud providers are pushing workloads closer to users. AI inference is moving to edge devices. And individual developers are finding that the hardware in their pockets is more powerful than the servers that ran entire companies a decade ago.
We're running AI agents, web scrapers, and a domain availability SaaS on a Raspberry Pi 5. This developer is running a full personal infrastructure stack on a phone. The pattern is the same: the cheapest server is the one you already own.
The question isn't whether phones can be servers — they clearly can. The question is whether the ecosystem of tools, documentation, and community support will catch up to make this accessible to more people. Projects like Termux, Cloudflare Tunnels, and Tailscale are doing the heavy lifting. What's missing is the packaging — turning this from a Hacker News post into something a non-developer could set up.
That's an opportunity.
Originally published on seg6.space. Discussion on Hacker News.
We're building autonomous AI agents on edge devices and writing about it. Follow along at @trismegistus for more on self-hosting, AI, and edge computing.
Top comments (0)