Releases: Shmayro/dockerify-android
v1.0.0 — ARM apps, Magisk modules, and full Docker bake-in
First tagged release of dockerify-android. Brings ARM/ARM64 app compatibility, automatic Magisk setup, and a more reliable first-boot.
Highlights
ARM/ARM64 app support (closes #38)
Modern Play Store apps that ship only with arm64-v8a / armeabi-v7a native libraries now install and run on the x86_64 emulator. Powered by Google's ndk_translation native bridge.
Opt-in via ARM_TRANSLATION=1 in your docker-compose.yml. After enabling:
$ adb shell getprop ro.product.cpu.abilist
x86_64,x86,arm64-v8a,armeabi-v7a,armeabi
$ adb install arm64-only-app.apk
Success # previously: INSTALL_FAILED_NO_MATCHING_ABISVerified end-to-end with arm64-only APKs (v2rayNG used as the reference test).
Automatic Magisk setup, addons install as Magisk modules
When ROOT_SETUP=1:
- The Magisk environment under
/data/adb/magisk/is bootstrapped during first-boot — no manual "Additional setup required" tap in the Magisk app after install. - ARM translation and GAPPS install as proper Magisk modules under
/data/adb/modules/<id>/, manageable from the Magisk app (toggle / disable / uninstall). - Toggling an addon on a previously rooted container now works correctly (previously Magisk's read-only magic mount silently blocked
/systempushes).
Reliable, self-contained installs
Each addon (install_root, install_gapps, install_arm_translation) reboots and adb wait-for-devices before writing its done-marker. A container killed mid-install can no longer leave a "marked done but not actually applied" state.
Faster, hermetic image
rootAVDno longer cloned from gitlab at runtime — baked into the image as atar.gz(saves ~84 MB of git history that was being fetched per first-boot).ndk_translationprebuilts also stored astar.gzin/opt/(~26 MB smaller image disk after pull).- No runtime
gitlab.comdependency for rooting.
Docker image tags
This release publishes (via #47's tagging pipeline):
shmayro/dockerify-android:1.0.0shmayro/dockerify-android:1.0shmayro/dockerify-android:1shmayro/dockerify-android:latest
Upgrade notes
Default docker-compose.yml:
environment:
ROOT_SETUP: 0
GAPPS_SETUP: 0
ARM_TRANSLATION: 1If you have an existing ./data volume from a previous version:
- ARM apps will install on next container restart (the install path runs once based on a per-addon marker).
- Toggling
ROOT_SETUP=1later on an existing data volume works without needing to manually open the Magisk app.
For a fully clean start: docker compose down && rm -rf data && docker compose up -d.
PRs in this release
- #47 — ci: versioning infrastructure
- #41 — feat: ARM/ARM64 app support via ndk_translation
- #50 — refactor: self-contained install functions in first-boot.sh
- #51 — feat: install addons as Magisk modules when root is active
- #52 — chore: bake rootAVD and use tar.gz storage for addon payloads
Thanks
Thanks to @Raulsc9 for opening #38 and pushing for ARM support, and to @snaike00 for reporting that the early attempt didn't work — that pointed us at the bugs in the first implementation.