What is Pockr?
Pockr stands for Pocket + Docker.
Docker in your pocket.
Pockr is a single Android APK that runs real Docker containers on any non-rooted Android phone. No Termux. No root access. No PC required after install.
You install it, tap Start Engine, and within minutes you have a live Docker daemon running inside a QEMU virtual machine — pulling images from Docker Hub, running containers, all from a device in your pocket.
GitHub: github.com/AI2TH/Pockr
Download: pockr-v1.apk — v1.0.0 · ARM64 · 163 MB
Why Does This Exist?
Android phones are powerful computers. A mid-range 2024 device has 8 cores, 8 GB RAM, and a full Linux kernel underneath. Yet the platform makes it nearly impossible to run Linux tools natively without root access.
Pockr explores how far you can push Android without any special privileges — using only public APIs, standard APK packaging, and a creatively bundled QEMU binary.
What You Need to Know Before Reading
This series assumes basic familiarity with:
| Topic | Why it matters |
|---|---|
| Docker | What containers and images are, basic docker run usage |
| Linux | Filesystems, processes, shared libraries (.so files) |
| Android | App lifecycle, APK structure, ADB basics |
| ELF binaries | Helpful for Parts 2–3 (linker, shared libraries) |
| Kotlin / Flutter | Helpful for Parts 1 and 5 |
You do NOT need to know QEMU, Alpine Linux, or virtual machines — those are explained as we go.
The Stack at a Glance
Flutter UI (Dart)
└── MethodChannel
└── Kotlin VmManager
└── QEMU (ARM64 binary, ships as libqemu.so)
└── Alpine Linux 3.19 (QCOW2 disk image)
└── Docker daemon
└── Your containers
| Layer | Technology |
|---|---|
| UI | Flutter + Provider |
| Native bridge | Android MethodChannel (Kotlin) |
| Hypervisor | QEMU 10.x, aarch64 |
| Guest OS | Alpine Linux 3.19 |
| Container runtime | Docker (inside Alpine) |
| API | FastAPI on port 7080 |
About the Name: Pockr
Pockr = Pocket + Docker
The goal was always something you could hand to someone — "here, install this APK, and you have Docker". No server. No laptop. No setup beyond tapping a button.
Docker in your pocket. The dropped vowel keeps it short. The double meaning — pocket-sized and Docker — felt right.
Pockr Series — Docker in Your Pocket
Pockr = Pocket + Docker. A single Android APK that runs real Docker containers in your pocket — no root, no Termux, no PC required.
| # | Post | Topic |
|---|---|---|
| 📖 | Intro | What is Pockr? Start here |
| 1 | Part 1 | The Idea and Architecture |
| 2 | Part 2 | Executing Binaries — The SELinux Problem |
| 3 | Part 3 | Bundling 50 Native Libraries |
| 4 | Part 4 | Docker Without Kernel Modules |
| 5 | Part 5 | Debugging the VM Restart Loop |
| 6 | Part 6 | Test Results and What's Next |
GitHub: github.com/AI2TH/Pockr
Creator & Lead Developer: Kalvin Nathan
skalvinnathan@gmail.com · LinkedIn
Top comments (0)