I have a home lab. It runs about thirty containers across two x86 boxes, and I reach them over Tailscale (a mesh VPN that lets devices on different networks talk as if they are on the same LAN) from wherever I am. So when I started running Docker containers on an old Android phone, the obvious question was why. I had dedicated hardware at home. Why was I stuffing a Poco M6 Pro with the same kind of workloads?
The honest answer is that the phone is with me. The home lab is at home. There is a category of small tools I reach for while out, and they used to mean firing up a remote session to a server I cannot see. Now they are a tap away on a device that lives in my pocket.
This is what I landed on, after a week of testing, and what was actually useful.
The setup that makes this work
Podroid (an Android app that runs Docker Engine on a smartphone by leveraging the Linux kernel under Android) is the piece of glue. It is not magic. It is essentially an Android-ified Docker daemon that runs in user-space without needing root. That last part matters. Most container hosting tools want system ports and root access, which you do not have on a stock Android phone. Podroid sidesteps that.
The catch is that the unrooted setup cannot bind to system ports (ports below 1024 that operating systems reserve for privileged services). For most of what I am running here, that does not matter. For anything that genuinely needs a low port, I run it on the home lab instead.
Storage is the other thing to think about. A 64GB phone with maybe 30GB free is plenty for the workloads I am about to describe. If your old phone is full of photos, expect to clear some space.
IT-Tools for the dev utilities I reach for
IT-Tools (a self-hosted collection of small web utilities for developers) is the one I open most. It is a Swiss Army knife of the small, fiddly tasks that come up in day-to-day work, and it does not need a server-grade box to run.
The pieces I use most: a basic auth header generator for quickly testing protected endpoints, a password strength analyzer when I am setting up something new, and an OTP code generator for the dozen services that want two-factor codes. None of those is novel on its own. Together, on a phone I can pull out of my pocket, they replace the dance of opening a desktop browser, navigating to a remote server, and waiting.
The dev utilities are the part that surprised me. Crontab generators, JSON and YAML validators, base64 encoders, regex testers. When I am sitting in a coffee shop and someone asks me to look at a misbehaving config file, I can lint the YAML without a laptop.
IT-Tools is a curated set, not a kitchen sink. If you want a specific obscure transformation, it might not be there. For ninety percent of what most developers reach for, it is.
Omni-Tools for the everyday chores
Omni-Tools (a self-hosted collection of general productivity utilities) is the more consumer-shaped sibling to IT-Tools. Where IT-Tools is dev-centric, Omni-Tools leans into the boring everyday stuff.
Text transformations that I use: pulling quotes around a passage, censoring words in a screenshot for sharing, shifting character positions in a phrase. The image tools are where it earns its keep on a phone. Annotating, watermarking, removing backgrounds. None of those is something I want to fire up a full desktop for, and none of them is something I want to do in a cloud app that wants my email address and a subscription tier.
The image-to-GIF converter and Discord timestamp generator are the kind of niche utilities that justify the whole setup. I would never install a dedicated app for either. Having them on a dashboard I already have open is a different shape of value.
What it is not: Omni-Tools is not a photo editor. For serious work, I want a real tool. For “make a quick meme and post it” work, it is exactly the right amount of tool.
ConvertX to replace every cloud file converter
ConvertX (a self-hosted file converter supporting documents, images, ebooks, video, audio, and more) is the swap that cleaned up the most mess on my phone. Cloud file converters are uniformly bad. They add watermarks. They make you wait in a queue. They try to upsell you after the third conversion. They want your email address for a “free” account that is anything but.
ConvertX runs locally. It supports the formats I actually use. PDFs to DOCX, EPUB to MOBI, PNG to WebP, the boring stuff. It also handles the less boring stuff. Full video transcodes (slowly, but it works). 3D model format conversions (I am not the audience for this, but I tested it). Even vCard conversions for cleaning up phone contact lists.
The limitation is hardware. A phone is not fast at transcoding a 4K video. It works, but you will be waiting. For documents and images, it is plenty fast.
If you do not self-host anything else, ConvertX is the one I would start with. It solves a real annoyance with cloud tools, it is a one-container install, and the privacy angle is the clearest of the four.
BentoPDF because phone PDF editors are uniformly terrible
PDF editors on Android fall into two camps. Free ones that are crippled until you pay, and paid ones that want a subscription. BentoPDF (a self-hosted PDF editor running entirely in the browser) is the third option: an editor that runs in a browser, hosted on your own hardware.
The features I use: decrypt password-protected PDFs (a thing I get from work more often than I would like), compress large PDFs to send via email, deskew scanned documents, extract pages, add signatures. Those cover most of what I do with PDFs on a phone. The advanced utilities (metadata stripping, document flattening, timestamping) are there when I need them but I do not use them daily.
The advantage of running BentoPDF on a phone is that the file never leaves the phone. For work documents I am not supposed to be sharing with cloud services, that matters.
Phone PDFs scroll slowly in any browser-based PDF tool. Big documents are worst. BentoPDF does not fix that, and neither does any other browser-based PDF editor I have tried.
Trade-offs
Running Docker on a phone is not free in time. The setup took me about an hour, mostly around figuring out which images to pull and how to handle the port issue on unrooted Android.
Maintenance is not free either. Podroid is one app to keep updated. The containers underneath are another set of updates. I check for updates weekly. Each check is five minutes. None of the containers I run here have ever broken, but they will eventually, and that is a category of work I did not have on a phone before.
Storage is the practical limit. Phones fill up. Running four containers plus their images plus their working directories takes a few gigabytes. That is fine on a phone dedicated to this purpose. It is tight on a phone that also has your photo library.
The migration took about an hour from “Podroid installed” to “all four containers running.” Most of that hour was waiting for Docker images to pull over Wi-Fi.
If you already have a home lab and you want pocket-access to specific utilities, this is a clear win. If you are looking for a reason to repurpose an old phone, this is a real reason. If you want to run a full home-lab replacement on a phone, look at a Raspberry Pi instead. It has the ports and the storage headroom.
What I would tell past me
Four things, if I could send a message back:
- Start with one container, not four. I tried to set up everything on day one and spent an hour debugging a YAML typo when I should have been proving the model worked. Pick the one tool you reach for most. Get that working. Add the next one the next day.
- Do not bind services to standard ports. Unrooted Android cannot reserve ports below 1024. Configure your containers to use high ports (8080, 8443, whatever) and reverse-proxy if you need the canonical port. Do not fight the platform.
- Watch storage before the phone does. Container images plus working files eat space faster than you expect. Set a monthly reminder to check. I caught one container silently filling up with cached downloads once. Now I check.
- Treat the phone as a complement to your home lab, not a replacement. A phone is great for the small utilities you reach for on the go. A phone is not great for anything that needs sustained CPU or storage. Run Jellyfin on your home lab. Run IT-Tools on the phone. The two setups complement each other.