From 5025b29aee06194bf52d4b6f5b26a990f2d42c8a Mon Sep 17 00:00:00 2001 From: tschettervictor <85497460+tschettervictor@users.noreply.github.com> Date: Wed, 7 May 2025 11:00:31 -0600 Subject: [PATCH] docs: Add comparing --- README.md | 10 ++++---- docs/chapters/comparing.rst | 48 +++++++++++++++++++++++++++++++++++++ docs/index.rst | 1 + 3 files changed, 54 insertions(+), 5 deletions(-) create mode 100644 docs/chapters/comparing.rst diff --git a/README.md b/README.md index 0829394f..0c77d66f 100644 --- a/README.md +++ b/README.md @@ -13,28 +13,28 @@ Bastille Compared to Other Jail Managers | --- | --- | --- | --- | --- | --- | | OCI Compliant | No | Yes | No | No | No | | Writen In | Bourne Shell | Bourne Shell, C | Bourne Shell, Rust | Bourne Shell | Bourne Shell, Python | -| Dependencies | None | C | None | Rust | Python | +| Dependencies | None | C | Rust | None | Python | | Jail Types | vnet, bridged vnet, thin, thick, empty, clone, Linux | clone, copy, tiny, thin, thick, empty, linux+debootstrap | thick | basejail | clone, basejail, template, empty, thick | | Jail dependency | Yes | Yes | Yes | No | Yes | | Import/Export | Yes | Yes | Yes | Yes | Yes | | Boot Order Priorities| Yes | Yes | No | Yes using `rcorder` | Yes | | Linux containers | Yes | Yes | No | No | Yes | | Automation | Templates | Makejail, Initscripts, Images | Flavours, Images | Flavours | Plugins | -| Cloning | Yes | No | No | No | No | +| Cloning | Yes | No | No | No | No | | Package Management | Yes | No | No | No | No | | ZFS Support | Yes | Yes | Yes | No | Yes | -| Volume management | Yes (mount and umount) | Yes | Basic | No | Basic | +| Volume management | Basic | Yes | Basic | No | Basic | | VNET Support | Yes | Yes | Yes | No | Yes | | IPv6 Support| Yes | Yes | Yes | Yes | Yes | | Dual Network Stack | Yes | Yes | Yes | No | No | -| Netgraph | Yes | Yes | No | No | No | +| Netgraph | Yes | Yes | No | No | No | | Dynamic Firewall | Yes | Yes | Yes | No | No | | Dynamic DEVFS Ruleset Management | No | Yes | No | No | No | | Resource Control | Yes | Yes | CPU and Memory | No | Legacy Only | | CPU Sets | Yes | Yes | Yes | Yes | Yes | | Parallel Startup | Yes | Yes (Healthcheckers, jails & NAT) | No | No | No | | Multi-Target Commands | Yes | No | No | No | No | -| Log Management | No | Yes | No | No | No | +| Log Management | Basic (console logs) | Yes | No | No | No | | Copy Files Between Jails | Yes | No | No | No | No | | Automated Jail Migration Between Servers | Yes | No | No | No | No | | Top/Htop Support | Yes | No | No | No | No| diff --git a/docs/chapters/comparing.rst b/docs/chapters/comparing.rst new file mode 100644 index 00000000..c4283bbe --- /dev/null +++ b/docs/chapters/comparing.rst @@ -0,0 +1,48 @@ +Comparing +========= + +Most jail managers have a table showing what they and their competitors are +capable of. While this is a good idea, the maintainers and developers of each +jail manger do not regulary visit each others projects to update these tables. + +Below is a table of what we feel is most important for a jail manager, as well +as a list of popular managers and their status on each option. + +| Feature | BastilleBSD | Appjail | pot | ezjail | iocage | +| --- | --- | --- | --- | --- | --- | +| OCI Compliant | No | Yes | No | No | No | +| Writen In | Bourne Shell | Bourne Shell, C | Bourne Shell, Rust | Bourne Shell | Bourne Shell, Python | +| Dependencies | None | C | None | Rust | Python | +| Jail Types | vnet, bridged vnet, thin, thick, empty, clone, Linux | clone, copy, tiny, thin, thick, empty, linux+debootstrap | thick | basejail | clone, basejail, template, empty, thick | +| Jail dependency | Yes | Yes | Yes | No | Yes | +| Import/Export | Yes | Yes | Yes | Yes | Yes | +| Boot Order Priorities | Yes | Yes | No | Yes using `rcorder` | Yes | +| Linux Jails | Yes | Yes | No | No | Yes | +| Automation | Templates | Makejail, Initscripts, Images | Flavours, Images | Flavours | Plugins | +| Cloning | Yes | No | No | No | No | +| Package Management | Yes | No | No | No | No | +| ZFS Support | Yes | Yes | Yes | No | Yes | +| Volume management | Basic | Yes | Basic | No | Basic | +| VNET Support | Yes | Yes | Yes | No | Yes | +| IPv6 Support| Yes | Yes | Yes | Yes | Yes | +| Dual Network Stack | Yes | Yes | Yes | No | No | +| Netgraph | Yes | Yes | No | No | No | +| Dynamic Firewall | Yes | Yes | Yes | No | No | +| Dynamic DEVFS Ruleset Management | No | Yes | No | No | No | +| Resource Control | Yes | Yes | CPU and Memory | No | Legacy Only | +| CPU Sets | Yes | Yes | Yes | Yes | Yes | +| Parallel Startup | Yes | Yes (Healthcheckers, jails & NAT) | No | No | No | +| Multi-Target Commands | Yes | No | No | No | No | +| Log Management | No | Yes | No | No | No | +| Copy Files Between Jails | Yes | No | No | No | No | +| Automated Jail Migration Between Servers | Yes | No | No | No | No | +| Top/Htop Support | Yes | No | No | No | No| + +We do our best to stay true and honest as to what other jail managers do and don't do. +If you see an error, you can open a PR on the BastillBSD github repo. + +We also realize that each jail manger does certain things better than other, and perhaps +certain things worse. Some do this, others do that. They are all different, and each user +should choose the one they want to use based on their needs. + +Thanks for using BastilleBSD! \ No newline at end of file diff --git a/docs/index.rst b/docs/index.rst index f7db9ff6..52383dd8 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -18,6 +18,7 @@ https://docs.bastillebsd.org. chapters/startup-configuration chapters/networking chapters/usage + chapters/comparing chapters/upgrading chapters/centralized-assets chapters/subcommands/index