Charliecloud vs Enroot
Charliecloud
charliecloud.ioEnroot
github.comSide by side
| Figure | Charliecloud | Enroot |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Linux | Yes | Yes |
| Self-hosted | Yes | Yes |
| Plans published | 1 | 1 |
| Spec score · Container Engines | 7.9 (#10) | 7.7 (#11) |
| License | Charliecloud is open source software distributed under the Apache License, Version 2.0. | The project is released under the Apache License 2.0. |
| Purpose | Charliecloud is a lightweight, fully unprivileged, open source container implementation for high performance computing applications. | Enroot turns traditional container and OS images into unprivileged sandboxes. |
Plans
In their own words
Charliecloud
Charliecloud is free, open-source container software for high-performance computing on Linux. It runs containers without privileged operations or daemons by using Linux user namespaces, with minimal configuration changes on computing-center resources. Users can build images, push and pull them to registries, and use accelerators such as GPUs. Its layer-free build cache is based on Git rather than union-mount filesystems and tarballs, and Dockerfiles are parsed with a formal grammar. The ch-image tool supports registry authentication and registries including GitLab Container Registry. At runtime, ch-run can inject host resources through the Container Device Interface, including NVIDIA GPUs and Cray networking. Installation is available from a release tarball, Git checkout, Spack, or Fedora/EPEL. Charliecloud requires Linux user namespaces and has been run on x86-64, ARM, and Power; current testing covers x86_64 and ARM. It is distributed under Apache License, Version 2.0. The project supports only the current release and provides no internal security boundary.
Enroot
Enroot is a free, open-source Linux command-line utility that turns traditional container and operating-system images into unprivileged sandboxes. It is aimed at high-performance or virtualized environments where portability and reproducibility matter and additional isolation is not required. Enroot runs without a daemon and supports unprivileged multi-user use without a setuid binary. Linux user and mount namespaces preserve filesystem separation, while the project provides little to no isolation. The command line covers batch, bundle, create, exec, export, import, list, remove, and start operations. It imports known formats including Docker, with the README reporting a 3x to 5x speedup for large Docker-image imports. Built-in GPU support uses libnvidia-container, and hooks can add NVIDIA support or Mellanox host MOFED. Runtime settings come from enroot.conf or higher-priority environment variables. Standard and hardened package flavors are available.