ZRS

Home server management.

ZRS is a self-hosted API-first server for managing containers, VMs, file shares, storage, and more on Linux.

ZRS does not replace existing OSS like docker, libvirt, samba, zfs, etc. It provides a management layer on top of these services making it easier to automate and configure them. Installing ZRS on existing servers or uninstalling ZRS does not impact your existing services.

ZRSorchestration layerdockercontainerslibvirtvirtual machinessambafile shareszfsstorage poolslinux host

What ZRS manages

The containers page in ZRS
Containers
Docker containers, images, networks, volumes, logs.
The virtual machines page in ZRS
Virtual machines
Qemu/KVM VMs, ISOs, VNC, and serial.
The file shares page in ZRS
File shares
SMB shares, users, ACLs, VFS stacks.
The system page in ZRS
System
Host metrics, storage drives, ZFS pools and datasets.

About ZRS

Currently ZRS works best for individuals who are comfortable configuring a Linux server, but would benefit from an API and or web UI. It does not yet have support for configuring network interfaces, updating packages, etc. Long term I do plan to focus on building complete server setup tools making it usable for even people new to home servers. I never want to treat my users like they are dumb and limit what they can do in order to provide simple product, a core principle of ZRS is to respect users. Sometimes that may mean advanced operations must be done on the CLI or through advanced UIs, but I believe it should never be blocked without extremely strong justification.

The server is developed API first, meaning everything the web app does you can do yourself using the API. If you don't like the web app you can replace the entire thing using the underlying API server. ZRS has support for API tokens with scoped permissions, webhooks, and comes with OpenAPI documentation that you can read or use for codegen to build your own SDK against your specific version of ZRS server. Note the API can have breaking changes until v1.0.0, I do try to minimize these as much as possible though.

A license covers a range of versions and those versions can be run forever, the current free licenses being given out covers anything up to v1.0.0. If I ever charge for ZRS and how much will depend on community feedback. In the current state I do not believe ZRS provides enough value to be worth charging users for and I'm open to the idea of keeping a version that's free forever.

Initial Roadmap

The roadmap will be expanded after these core features are complete.

ContainersIn-Progress10/12
Basic Container lifecycle (start, stop, etc)Container editContainer refreshContainer cloningContainer log viewerContainer performance statsContainer image managementContainer network managementContainer volume managementTemplate gallery & deployTemplate custom saving & overridesPacks: multi-container templates
Virtual machinesIn-Progress4/7
Basic VM lifecycle (start, stop, etc)VM details & inspectionVM remote console (serial & graphical)VM snapshotVM creationVM edit & reconfigureVM networking management
ZFSIn-Progress7/9
Pool create, import, export & destroyPool status & topologyPool scrub, trim & feature upgradeDisk replacement & failure recoveryDataset managementSnapshots & rollbackFolder-to-dataset conversionVolumes (zvols)Clone & promote
SambaComplete4/4
Samba share managementSamba user managementSamba VFS module configurationZFS integration for shares
SystemIn-Progress4/7
CPU & memory monitoringDisk space monitoringNetwork throughput monitoringRead-only network interface visibilityLong-term metrics history & chartsHardware temperature monitoringNetwork interface configuration
PlatformComplete10/10
REST API with OpenAPI specWeb authenticationAPI token auth for automationWebhooksEvent feedNon-root operation via privileged helperMobile-friendly layoutDark / light modeCommand palette quick actionsLicense activation

Recent releases

v0.1.382026-08-31Initial alpha release.

FAQ

Does ZRS track me?
No. ZRS runs fully offline and doesn't make outbound connections unless you configure webhooks. The license is a signed file that's checked locally on startup. You can run the server air-gapped.
Why is ZRS closed source?
ZRS is a small personal project, the idea is selling a license can help me dedicate more time to keep building it. If for some reason I stop or slow down on development I'll consider open sourcing it.
What will a license cost long term?
Pricing isn't decided yet, but my long term plan is to make it a modest yearly fee for updates. When that change happens, all versions released prior will still be valid to run with the current free license.
How do I get into the alpha?
Create an account and confirm your email, that puts you on the list. There is no fixed number of licenses, but access is not automatic, I go through requests by hand and approve in batches I can keep up with, so expect a wait.
What happens if ZRS shuts down?
Your setup keeps running, the version you downloaded & activated should run forever since there are no online license checks. You can also uninstall ZRS at any time and keep using your server directly or install other management tools, because ZRS is just a management layer and does not replace the underlying server software.
What hardware does it need?
Linux. ZRS is a Rust server and uses very little RAM at idle, so hardware limitations are more about what you plan to run on the server and not ZRS. Both x86 and ARM builds are published, however I do not currently test the ARM builds with end-to-end testing.