lkm4ctr by cyanmint loads a kernel module, lkm4ctr.ko, that adds what Docker and other container runtimes need to an arm64 Android GKI kernel. You don't flash a custom kernel; the module just has to match your kernel's KMI.
The KernelSU module
- Carries a
.kofor every released KMI, from android12-5.10 to android17-6.18, and picks the one for your kernel. - Loads it automatically at boot (on by default).
- Action button: Volume Up loads or unloads the module, Volume Down turns boot auto-load on or off. With no key press in 30 seconds it takes Volume Up.
- Includes
lkm4ctr_checkerand a WebUI in several languages that shows the checker's output.
You can also download the single .ko for your KMI from the release page and load it as root with insmod.
Getting Docker running
- Check your kernel with
uname -a, then install the module zip in KernelSU (or load the matching.ko). - Install
fuse-overlayfsand make it Docker's default storage driver, as described in the manual. - Start the daemon, then test a container:
sudo dockerd --config-file="$PREFIX/etc/docker/daemon.json" --bridge=none --experimental
sudo docker run --network=host --rm -it docker.io/library/alpine:latest /bin/shNetwork namespaces are only tracked, not isolated, so containers need host networking (--network=host) to reach the network.