๐ v2.0.0-alpha3 - Docker Build Fix for ARM Platforms
โ ๏ธ ALPHA RELEASE - For Testing Only
This is the third alpha release of MeshMonitor v2.0.0, fixing the Docker build issues for ARM platforms (Raspberry Pi, etc.).
๐ Critical Fix
Docker Multi-Architecture Build (#141)
- Fixed: Docker builds failing on ARM platforms (linux/arm/v7, linux/arm64)
- Issue: Native Node.js modules (
better-sqlite3,bcrypt) couldn't compile in production stage - Solution: Copy pre-compiled
node_modulesfrom builder stage instead of reinstalling - Impact: Docker images now build successfully for all platforms (amd64, arm64, arm/v7)
๐ Changes Since Alpha 2
- Removed: npm install step in production stage (was failing on ARM)
+ Added: Copy node_modules from builder stage (includes compiled native modules)
+ Result: Multi-architecture Docker builds now work๐๏ธ Technical Details
Why This Failed Before:
- Production stage tried to run
npm install --omit=dev - This triggered compilation of native modules (
better-sqlite3,bcrypt) - ARM platforms don't have build tools (gcc, make, python) in the Alpine image
- Installation failed with
gyp ERR! not ok
How It's Fixed Now:
- Builder stage compiles all dependencies (including native modules)
- Production stage copies the entire
node_modulesdirectory - No compilation needed in production stage
- Works across all architectures
โ Benefits
- โ Multi-platform support: Works on x86_64, ARM64, and ARM/v7
- โ Faster builds: No npm install in production stage
- โ More reliable: No platform-specific compilation issues
- โ Raspberry Pi ready: ARM builds now complete successfully
๐ง First-Run Setup
Same as previous alphas:
- Username:
admin - Password:
changeme
โ ๏ธ IMPORTANT: Change this password immediately after first login!
๐ Configuration
Same environment variables as Alpha 1 - see full documentation in the Alpha 1 release notes.
๐งช Testing
This alpha release focuses on:
- โ Docker build process working on all platforms
- โ ARM platform support (Raspberry Pi, etc.)
- โ Native modules working correctly in production
- ๐ Auto-announce scheduling (diagnostics added in Alpha 2)
๐ Known Issues
- Auto-announce may not be triggering at the configured interval (debugging logs in Alpha 2 should help diagnose)
๐ฆ What's Next
- Monitor Docker builds to ensure they complete successfully
- Continue investigating auto-announce scheduling based on diagnostic logs
- Additional bug fixes from community feedback
- v2.0.0-beta1 with stabilized features
๐ Full Changelog
All changes in Alpha 3:
- fix: copy compiled node_modules from builder instead of reinstalling (#141)
Previous alpha releases:
- v2.0.0-alpha2 - Auto-announce debugging
- v2.0.0-alpha1 - Initial release
๐ฏ For Raspberry Pi Users
This release specifically addresses build issues that prevented deployment on Raspberry Pi and other ARM devices. You should now be able to:
- Pull the Docker image from GitHub Container Registry
- Run MeshMonitor on your Raspberry Pi without compilation issues
- Use all features including authentication and database operations
๐ Acknowledgments
Thanks for the patience while we worked through the multi-architecture Docker build issues!
๐ค Generated with Claude Code