AppJail: Simple and easy-to-use tool for creating portable jails

From: DtxdF <DtxdF_at_disroot.org>
Date: Fri, 17 Feb 2023 18:07:02 UTC
Hi!

I want to share a tool I created to test my ports, to learn more about jails and just as a hobby.

This is AppJail, a simple and easy to use tool to create portable jails.

My main motivation is a tool for system administrators and developers.

The features are as follows:

* Easy to use.
* Parallel startup (Jails & NAT).
* UFS and ZFS support.
* RACCT/RCTL support.
* NAT support.
* Port expose - network port forwarding into jail.
* IPv4 and IPv6 support.
* DHCP and SLAAC support.
* Virtual networks - A jail can be on several virtual networks at the same time. * Bridge support.
* VNET support
* Deploy your applications much easier using Makejail!
* Netgraph support.
* LinuxJails support.
* Supports thin and thick jails.
* TinyJails - Experimental feature to create a very stripped down jail that is very useful to distribute.
* Startup order control - Using priorities and the boot flag makes management much easier.
* Jail dependency support.
* Initscripts - Make your jails interactive!
* Backup your jails using tarballs or raw images (ZFS only) with a single command.
* Modular structure - each command is a unique file that has its own responsability in AppJail. This makes AppJail maintenance much easier.
* Table interface - many commands have a table-like interface, which is very familiar to many sysadmin tools.
* No databases - each configuration is separated in each entity (networks, jails, etc.) which makes maintenance much easier.
* Supervisor - Coming soon ...
* ...

AppJail has a useful feature called Makejail, which is somewhat similar to Dockerfile. The idea is to use a file that contains the steps to create a jail with its configured packages.

Visit the main site: https://github.com/DtxdF/AppJail and the centralized repository for Makejails: https://github.com/AppJail-makejails

I have created a bug to use it as a port: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=269631