FDEBench Join us live

Q
158 / 159

Serving & inference

Compare a daemon-based container runtime with a daemonless one, and tell me where you would deploy each.

question bank FDEBench bank

01
Sketch

Reference sketch

A short answer key carried over from the source. Not yet a graded rubric.

1. Draw the architectural difference: one runs a long-lived privileged background service that owns every container, the other invokes a low-level runtime directly per container with no central process. 2. Derive the availability consequence: if the daemon fails or is restarted badly, control over every container on the host is lost at once, whereas a daemonless model has no shared process to lose. 3. Derive the security consequence: a root daemon means a container-escape or an API-socket compromise yields root on the host; rootless operation confines a compromised container to an unprivileged user namespace. 4. Note that mounting the daemon socket into a container — common in CI — is effectively granting host root, and it is the single most common instance of this risk. 5. Give the daemon model its due: mature tooling, a stable remote API many tools depend on, and simpler behaviour for desktop development. 6. Place them: daemonless and rootless on servers and CI runners where the isolation and blast-radius properties matter; whichever the team already knows on laptops, since the threat model there is different. 7. Name the practical costs of switching: lifecycle now belongs to the init system rather than the daemon, and daemon-socket-dependent tooling needs reconfiguration. 8. Note the convergence — both target the same OCI image and runtime specs, so images are portable either way.

—