BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage News Announcing Styrolite, a Low Level Container Runtime

Announcing Styrolite, a Low Level Container Runtime

Listen to this article -  0:00

Styrolite is an open-source, low-level container runtime to address security and usability issues in Linux containerization. Developed by Edera, Styrolite differentiates itself by offering a programmatic API that enables developers to create and manage containers in a controlled and secure manner.

Ariadne Conill, Founder and Distinguished Engineer at Edera, announced Styrolite in a blog post. Elaborating on the need for a new low-level container runtime, Conill stated that existing low-level container runtimes such as Bubblewrap and util-linux’s unshare are either too reliant on complex command-line interfaces or lack required programming control. This makes them error-prone and hard to integrate into modern, security-focused platforms.

On the other end, there are high-level solutions such as Kubernetes Container Runtime Interface (CRI), which are too abstract for low-level container management. To fill this gap, a new low-level runtime that allows engineers to spawn and manage containers with greater precision and reliability is needed.

While Linux namespaces are foundational to containers, they were never intended as hard security boundaries. This leads to more container vulnerabilities escaping through the ecosystem. Building on this limitation, Styrolite provides a stronger security foundation for containerized workloads.

Under the hood, Styrolite leverages the Linux unshare(2) syscall to create isolated environments by disassociating processes from host namespaces. Using this approach, engineers can get granular control over which namespaces are unshared and how resources are exposed to containers. The API provides clear specification of root filesystems, executables, arguments, working directories, and namespaces, making container setup less error-prone than manual CLI scripting.

The tech community on Hacker News was quick to take note of this announcement. One of the HN users asked what Edera developers do differently with Styrolite, considering it still uses Linux namespaces. An Edera developer with an HN handle denhamparry responded,

...we use Styrolite to run containers with Edera Protect. Edera Protect creates Zones to isolate processes from other Zones so that if someone were to break out of a container, they'd only see the zone processes. Not the host operating system or the hardware on the machine. The key difference here between us and other isolation implementations is that there is no performance degradation, you don't have to rebuild your container images, and that we don't require specific hardware (e.g. you can run Edera Protect on bare metal or on public cloud instances and everything else in-between).

Another conversation thread in the same post compared gVisor and Edera Protect features.

Within Edera Protect, Styrolite is helpful in securing microservices, enabling fine-grained container isolation for security-sensitive workloads. Engineers can also use Styrolite to build isolated, resource-controlled environments for continuous integration and delivery pipelines.

For further information, interested readers can navigate to the Styrolite GitHub repository.

About the Author

BT