PlatformIsolationsmolvm backend

smolvm alternatives and decision

Compares smolvm with hardened Docker, Docker Sandboxes, Apple Container, and OrbStack against the required isolation boundary.

Summary

smolvm is the open fallback candidate when hardened Docker is insufficient and Apple Container cannot meet Docker-inside compatibility. Docker Sandboxes is more productized, while OrbStack isolated machines do not add a per-workload kernel boundary.

Question and scope

Which post-Docker option best matches jackin on macOS ARM when the required property is a separate kernel per agent workload rather than another namespace layer?

Method

The comparison uses evidence verified through 2026-06-10: the Docker Sandboxes overview, architecture, security model, isolation layers, smolvm 1.0.1 sources, Apple Container research, and OrbStack's documented architecture.

Findings

Required boundary

Hardened containers reduce capabilities, mounts, egress, and daemon exposure, but continue to share the host VM kernel. A VM-per-workload backend limits a successful guest-kernel exploit to that workload's VM. This stronger boundary matters most for privileged nested Docker and untrusted dependency execution.

Comparison

ConcernHardened DockersmolvmDocker SandboxesApple Container
Kernel boundarySharedPer workloadPer sandboxPer container
OCI inputNativeNativeDocker-nativeNative
Private Docker engineExisting DinD patternDemonstrated with constraintsProduct featureNeeds validation
Credential proxyjackin-owned mechanismsNot provided by TSIProduct featureNeeds jackin design
Policy maturityExisting backendLow-level building blocksProductizedNew platform
OpennessDocker/runtime ecosystemApache-2.0 Rust projectProprietary product surfaceOpen-source Apple project
macOS floorCurrent supported hostsHypervisor.frameworkSupported productmacOS 26

Docker Sandboxes already provides the closest complete product shape: dedicated microVM, private Docker Engine, workspace lifecycle, network policy, and credential proxy. Its tradeoff is dependency on Docker's product and control surface.

Apple Container is architecturally attractive because it provides native per-container VMs on Apple Silicon without a Docker daemon at the VM layer. Docker-inside behavior and the operator OS floor decide whether it can cover jackin roles.

smolvm 1.0.1 provides the smallest open foundation and the best opportunity for jackin-owned policy, including VM fork, elastic memory, deny-by-default networking, and host-custodied SSH-agent forwarding. jackin would still own more lifecycle, credential, packaging, and validation work.

OrbStack machines share OrbStack's Linux kernel. For operators already using OrbStack as the Docker backend, an isolated machine adds namespaces inside the existing outer VM rather than a new workload kernel. See OrbStack isolated machines.

Current decision

  1. Keep hardened Docker as the near-term baseline.
  2. Prefer Apple Container when its runtime and Docker-inside validation satisfy role requirements.
  3. Keep smolvm as the open fallback and research candidate.
  4. Do not select OrbStack isolated machines to solve per-workload kernel isolation.

This ordering is a research conclusion, not delivery status. Implementation commitments and gates belong to the linked roadmap items.

Implications for jackin

Any stronger backend must preserve the operator-visible contract: explicit isolation boundary, mount list, network policy, Docker capability, credential handling, lifecycle, and residual risks. Backend selection must not imply security properties the runtime does not provide.

Limitations and unknowns

No comparable local benchmark exists across the four options. Apple Container and Docker Sandboxes are moving products; smolvm APIs and release packaging can change. Revalidate before an implementation decision.

Sources

On this page