All apps · 0 apps
HRConvert2
Docker app from grtgbln's Repository
Overview
Readme
View on GitHub
🔁 HRConvert2
Self-Hosted, Resource-Aware, Public-Facing File Conversion Server
No database. No cookies. No tracking. Nothing leaves your server.
Get Started · Documentation · Docker Image
🔒 Why HRConvert2?
Every free online file converter is actually a data collection business in disguise. Upload a contract, medical scan, or proprietary CAD file? You just handed it to a stranger with an ad network.
HRConvert2 is different. Same convenience. Zero compromise.
- Conversions happen on your machine using local tools
- Users need no account and leave no trace
- Runs on a Raspberry Pi
- Workflow: Drag, drop, convert, download
🛡️ The Privacy Promise
| Feature | What You Get |
|---|---|
| Nothing transmitted | Conversions run locally only |
| No accounts or sessions | Users are temporary directories |
| Zero tracking | No analytics, telemetry, or CDN |
| Auto-delete files | Configurable age-based cleanup |
| Isolated storage | Users cannot see each other's files |
⚡ Quick Start
🧩 Traditional Install (30 seconds)
git clone https://github.com/zelon88/HRConvert2
sudo bash HRConvert2/Documentation/Build/hrconvert2-setup.sh
The installer handles everything:
- Pulls all dependencies
- Creates storage
- Sets up AppArmor profile & PHP settings
- Installs systemd unit
- Reports what's working
Then open http://your-server/HRProprietary/HRConvert2/convertCore.php and start converting.
Pro tip: Add -y to skip confirmations.
🐳 Docker
docker run -d -p 8080:80 --cap-add SYS_ADMIN zelon88/hrconvert2
Note: SYS_ADMIN is required for the security sandbox. Without it, HRConvert2 refuses conversions rather than running unprotected.
🛠️ Troubleshooting
sudo php convertCore.php -fp
This fixes 99% of issues and reports exactly what it corrected.
sudo php convertCore.php -v
This validates every installed component, every dependency, every feature. Everything. An extremely powerful diagnostic tool.
📦 Supported Formats: 488 Total
| Category | Examples |
|---|---|
| Documents | doc, docx, txt, rtf, odt, pdf |
| Video | mp4, mkv, avi, mov, webm, flv, + 50+ more |
| Audio | mp3, flac, aac, wav, opus, wma, + 30+ more |
| Spreadsheets | csv, xls, xlsx, ods |
| Presentations | pptx, ppt, odp |
| Images | jpg, png, gif, webp, svg, ico, heic |
| Archives | zip, rar, 7z, tar, gz, bz2 |
| E-Books | epub, mobi, azw, azw3, azw4 |
| 3D Models | obj, stl, dxf, collada, ply |
| Technical | OpenSCAD, CAD drawings, vector graphics |
| Bootable ISO | x86, ARM, UEFI, MBR/GPT hybrid |
| OCR | Extract text from images and PDFs |
| Live Streams | Capture and convert .m3u8 playlists |
| Subtitles | srt, vtt, ass, sub, sbv, ttml, + more |
🔐 Security by Design
HRConvert2 is built for public-facing deployment—which means it's built to be attacked. Every protection is there for a reason.
🧰 Sandboxing
Every conversion dependency runs inside a bubblewrap namespace:
- ImageMagick, FFmpeg, Inkscape, OpenSCAD—all isolated
- Each process sees only its input (read-only) and output directories
- Network is unshared—no external URL handlers
- No sandbox = no conversion (HRConvert2 refuses rather than takes risks)
🛡️ Multi-Layer Protections
- Session identifiers derived from a per-install secret (CSPRNG)
- Dependencies version-pinned and verified at runtime
- Uploads sanitized before any tool touches them
- Stream URLs fully inspected before FFmpeg sees them
- Updates require shell access (not guessable secrets)
- Every error documented with cause and solution
🌐 26 Languages Built In
Users switch languages instantly from the interface—no language packs to install:
| English | Français | Español | 中文 |
| हिन्दी | العربية | Русский | Українська |
| বাংলা | Deutsch | 한국어 | Italiano |
| Português | Tiếng Việt | Türkçe | 日本語 |
| Bahasa Indonesia | Polski | Nederlands | Kiswahili |
| မြန်မာ | اردو | فارسی | עברית |
RTL Support: Arabic, Hebrew, Persian, Urdu, and Syriac display with proper right-to-left layouts.
Community-Driven: Adding a language is as simple as adding one folder. No core code changes required.
🎨 Customizable Interfaces & Appearance
Users can personalize their experience:
- 3 interface layouts: Default, Wide, Original
- 7 color schemes: Red, Green, Blue, Grey, Orange, Purple, Dark
- In-page switching: No reload needed
Admins can lock down preferences in config.php. Each interface lives in its own folder—fork and brand it however you want without touching the core.
🚀 Advanced Features
⚙️ Resource-Aware Load Management (Optional)
Turn on smart resource management to prevent overload:
- CPU & memory caps scale with system load
- Runaway conversions auto-terminate
- Storage spans multiple disks (round-robin, least-active, or failover)
- System watchdog monitors everything
Key design: Fails open. No budget socket? Conversion runs anyway. Nothing can take your server offline.
💻 Command-Line Control
Everything is manageable from the terminal:
php convertCore.php -v # Version & dependency check
php convertCore.php --status # System state
php convertCore.php -u=latest # Update to newest release
php convertCore.php -c=now # Clean all expired sessions
php convertCore.php -fp # Fix permissions & repair
php convertCore.php --config # Interactive config wizard
php convertCore.php -l # Start resource listener
php convertCore.php -k # Stop resource listener
🗄️ Storage Distribution
Span storage across multiple drives with your choice of strategy:
- Round-robin for even distribution
- Least-active for dynamic load balancing
- Redundant for failover protection
🔄 Auto-Update with Rollback
php convertCore.php -u=latest
Updates pull a release, merge your config, swap atomically, then verify. Can't run? Automatically rolls back to the previous version.
🧾 System Requirements
| Requirement | Minimum |
|---|---|
| OS | Debian or Ubuntu Linux |
| Web Server | Apache 2.4 |
| PHP | 8.0 or later |
| Hardware | Raspberry Pi Model B+ (any x86/x64 is comfortable) |
| Sandbox | Bubblewrap (required and non-negotiable) |
The installer handles all dependencies. Seriously—just run the script.
🤝 Contributing
Contributions are welcome:
- Language translations — Just add a folder
- Interface themes — Fork a UI folder and get creative
- Bug reports — Include reproduction steps
- Security reports — Open an issue (we take them seriously)
The architecture is deliberately modular: a language is a folder, an interface is a folder. Neither requires touching the core.
📜 License
GNU General Public License v3.0
Free to use. Free to modify. Free to self-host.
If you improve it, send it back.
Made for privacy-conscious developers
@zelon88
Install HRConvert2 on Unraid in a few clicks.
Find HRConvert2 in Community Apps on your Unraid server, review the template, and click Install. Unraid handles the Docker app or plugin setup from the published template.
Download Statistics
Total Downloads Over Time
Related apps
Explore more like this
Explore allDetails
zelon88/hrconvert2:latestRuntime arguments
- Web UI
http://[IP]:[PORT:80]- Network
bridge- Privileged
- false
Template configuration
Container Port: 80
- Target
- 80
- Default
- 8435
- Value
- 8435