Evaluate our On-Prem virtual appliance. Download the free trial OVA

On-Prem virtual appliances are designed to work entirely offline. This trial contains a sample stack: MySQL, Nginx, NodeJS.

Getting started

  1. Import the OVA into VirtualBox
  2. Change the Login password to access it over SSH port 22, or
  3. Access the Admin Dashboard on HTTPS port 8443
  4. Read the documentation below


This OVA is not production-ready, and not suited for enterprise deployments.


OVA: on-prem-v1.1.0-trial.ova (83 MBytes)

Release date: March 6, 2018

Trial VS Enterprise OVA

The Trial OVA is a modified version of a typical enterprise virtual appliance created for our customers.

Trial OVA Enterprise OVA
Admin Scripts
On-Prem customizations
Minimal footprint OS
Basic OS tools and dependencies
Basic console GUI
Enterprise console GUI
Custom OS tools and dependencies
Auto-grow expandable storage
Network storage (NFS, iSCSI, NBD, AoE)
Replication and backups tools
LUKS secure data encryption
Prompt security updates
VMware ESX, Hyper-V, Xen, and AWS support
Automation tools for reproducible builds
Support for additional customizations and features
Proven production-ready

Feel free to play with the REST API and Admin Dashboard (HTTPS port 8443), poke around, read the sources, and make changes.


Download Size Release date SHA256 hash
on-prem-v1.1.0-trial.ova 83 MBytes March 6, 2018 ca00a2f6d4f2f9b24836a89051e4ec4744b2cfd709e91cd1c9ae858f1f3145a5


Important files and directories
  • /mnt/sda1/boot/

    The disk (disk1) directory which holds the OS, kernel, custom rootfs, and your app.tcz application.

  • /data/

    An xfs-formatted LVM disk (disk2) for storing your application settings, databases, etc.

  • /mnt/sda1/on-prem-backups/

    Directory which persists system settings such as network config, using the list of files/dirs from/opt/.filetool.lst

  • /opt/jidoteki/tinyadmin/

    Directory which contains the On-Prem scripts, logs, and config files used by the On-Prem Admin API

Making changes

The OVA's filesystem is memory-based, so almost all changes will be lost on reboot. Files which aren't persisted to fixed disk (ex: sda1) can still be altered.

The process is similar to Remastering TinyCore Linux which involves extracting the rootfs (with cpio), modifying the necessary files, and then re-packing the rootfs (with cpio, without gzip compression).

Updating the Linux kernel is a bit more involved, since it also requires updating the modules directory in the rootfs, as well as updating the extensions named extension-KERNEL-VERSION.tcz

More info on updating the kernel for TinyCore Linux: https://github.com/on-prem/tinycore-kernel

Your application

The idea behind our On-Prem appliance is to provide an OVA in which you can easily "drop-in" your own application, and have it load automatically on boot.

Your application should replace the file /mnt/sda1/boot/app.tcz.

This file is a compressed squashfs archive which will be mounted in memory as a read-only filesystem. For this reason, your application should write all its data to /data/.

The OVA includes the mksquashfs tool for creating the archive. It should contain your app, node_modules, start script, post-install script, and any other files required for your application to run.

The post-install script is located in /usr/local/tce.installed/app with executable permissions.

The start script is located in /usr/local/etc/init.d/app with executable permissions.

More info on creating extensions for TinyCore Linux: http://wiki.tinycorelinux.net/wiki:creating_extensions

Source code

All files in this OVA are open source and available in various locations:

We've done our best to include all sources for all scripts, programs and libraries, but if anything is missing, please let us know.

This is too much work!

Of course, building, customizing, and updating an On-Prem virtual appliance is a lot of work.

With our Meta appliance, we've mastered and automated the entire process, and are happy to help with new deployments.

For support (paid), contact sales and we'll gladly help build a production-ready enterprise appliance.

For other questions, join us on freenode.net: #On-Prem on freenode.net IRC