- luci-app-streamlit-forge: Streamlit app publishing platform - Category: productivity, runtime: lxc - Templates, SSL exposure, mesh publishing - luci-app-rezapp: Docker to LXC app converter - Category: system, runtime: native - Catalog browsing, package generation - Updated new_releases section - Total plugins: 37 → 39 Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
3.9 KiB
3.9 KiB
RezApp Forge
Docker to SecuBox LXC App Converter.
Overview
RezApp Forge converts Docker images into LXC containers and generates SecuBox addon packages. Browse Docker Hub, GHCR, and LinuxServer.io catalogs, convert images to LXC, and publish to the SecuBox app store.
Features
- Catalog Management - Docker Hub, LinuxServer.io, GHCR support
- Docker Search - Search images across all enabled catalogs
- Image Info - View available tags and architectures
- Docker to LXC - Convert Docker images to LXC containers
- Package Generation - Auto-generate SecuBox addon packages
- Catalog Publishing - Add converted apps to SecuBox catalog
Installation
opkg install secubox-app-rezapp
CLI Usage
# Catalog management
rezappctl catalog list # List enabled catalogs
rezappctl catalog add <name> <url> # Add custom catalog
rezappctl catalog remove <name> # Remove catalog
# Search Docker images
rezappctl search <query> # Search all catalogs
rezappctl search heimdall # Example: search for heimdall
rezappctl info <image> # Show image details
# Convert Docker to LXC
rezappctl convert <image> [options]
--name <app-name> # Custom app name
--tag <version> # Image tag (default: latest)
--memory <limit> # Memory limit (default: 512M)
# Generate SecuBox package
rezappctl package <app-name> # Create package from converted app
# Publish to catalog
rezappctl publish <app-name> # Add manifest to SecuBox catalog
# List converted apps
rezappctl list # Show all converted apps
Example Workflow
# 1. Search for an app
rezappctl search heimdall
# 2. Check available tags
rezappctl info linuxserver/heimdall
# 3. Convert to LXC
rezappctl convert linuxserver/heimdall --name heimdall --memory 512M
# 4. Generate SecuBox package
rezappctl package heimdall
# 5. Publish to catalog
rezappctl publish heimdall
Configuration
UCI config: /etc/config/rezapp
config main 'main'
option cache_dir '/srv/rezapp/cache'
option output_dir '/srv/rezapp/generated'
option apps_dir '/srv/rezapp/apps'
option lxc_dir '/srv/lxc'
option default_memory '512M'
config catalog 'dockerhub'
option name 'Docker Hub'
option type 'dockerhub'
option enabled '1'
config catalog 'linuxserver'
option name 'LinuxServer.io'
option type 'dockerhub'
option namespace 'linuxserver'
option enabled '1'
Conversion Process
- Pull - Download Docker image
- Export - Create container and export filesystem
- Extract - Unpack to LXC rootfs
- Configure - Generate LXC config from Docker metadata
- Wrap - Create start script for LXC execution
Generated Package Structure
/srv/rezapp/generated/secubox-app-<name>/
├── Makefile # OpenWrt package makefile
├── files/
│ ├── etc/config/<name> # UCI configuration
│ ├── etc/init.d/<name> # Procd init script
│ └── usr/sbin/<name>ctl # Management CLI
└── README.md
LuCI Interface
Install luci-app-rezapp for web interface at Services > RezApp Forge.
Dependencies
- docker
- lxc, lxc-common
- curl, wget-ssl
- jsonfilter
File Locations
| Path | Description |
|---|---|
/etc/config/rezapp |
UCI configuration |
/usr/sbin/rezappctl |
CLI tool |
/srv/rezapp/cache/ |
Downloaded images |
/srv/rezapp/apps/ |
Converted app metadata |
/srv/rezapp/generated/ |
Generated packages |
/srv/lxc/<app>/ |
LXC container rootfs |
/usr/share/rezapp/templates/ |
Package templates |
Templates
Templates at /usr/share/rezapp/templates/:
Makefile.tpl- Package Makefileinit.d.tpl- Procd init scriptctl.tpl- Management CLIconfig.tpl- UCI defaultsstart-lxc.tpl- LXC startup wrapperlxc-config.tpl- LXC configurationmanifest.tpl- App catalog manifest