Apptainer: Application Containers for Linux
Apptainer vs Other Container/Packaging Systems
- Compared with Flatpak: Flatpak focuses on strong desktop sandboxing with fine‑grained permissions; Apptainer defaults to loose integration with the host (same UID, shared networking/PIDs, easy host file access) and can optionally add more isolation.
- Discussion clarifies that OSTree vs “containers” really means OSTree vs OCI image format; both are about filesystem management, not containers themselves.
- Apptainer supports its own SIF single‑file image format and can consume OCI images and CNI networking.
- Compared with AppImage: AppImage is praised for including its own runtime, but also criticized as forcing developers to target very old distributions.
- Nix and tools like nixery.dev are mentioned as alternative ways to get reproducible/ephemeral environments.
HPC and Scientific Computing Use Cases
- Widely used on SLURM and other shared clusters where users lack sudo and Docker/Podman are often disallowed.
- Strong presence in bioinformatics and general HPC as an alternative to compiling on the cluster or wrestling with system libraries.
- Particularly valued for AI/ML on clusters: GPU passthrough “just works,” MPI and high‑speed interconnects integrate well, and
--fakerootallows unprivileged image builds. - Apptainer is effectively the continuation of the original Singularity project; Singularity CE is the fork. Containers are mostly interoperable, but behavior can differ (e.g., a reported timezone substitution bug in Singularity CE only).
Deployment, Storage, and Filesystem Considerations
- SIF’s single‑file image is convenient on HPC where home and project dirs are network filesystems and local disks are small, ephemeral, or wiped between jobs.
- Network filesystems (Lustre, NFS, etc.) and inode quotas strongly influence design: Apptainer images avoid inode exhaustion and don’t rely on overlayfs or local image stores.
- Some argue Docker/Podman with registries and caching could also work at scale; others counter that per‑job, per‑user images and huge Python layers make that operationally painful.
Developer Workflow and Tooling Overlap
- Apptainer is likened to Docker but rootless and tuned for CLI workloads; compared with Fedora Toolbox, which intentionally shares much of the host and is not security‑focused.
- Commonly combined with conda for unprivileged package management.
- Mac users can run Apptainer via Lima/VMs, but integration with IDEs is noted as weaker than Docker’s.
Critiques and Skepticism
- Some find the project’s value vs rootless Podman/Docker unclear and wish messaging was sharper.
- A silicon‑design team abandoned Apptainer after issues composing multiple toolchain containers, artifacts linking to hidden container libraries, and PATH confusion; they preferred traditional module systems (TCL/Lua).
- Broader skepticism about containers appears: perceived fragility, complexity, “cheating” compared to clean toolchains, and discomfort with encryption/signing features that seem marketing‑driven.
- Philosophical point: some argue process isolation should be a first‑class OS default rather than bolted on via userland container tooling.