Skip to content

v0.3.0

Latest

Choose a tag to compare

@github-actions github-actions released this 06 Sep 19:33
· 9 commits to main since this release
v0.3.0
65be4fc

Stops the interceptor leaking containerd shims, and makes read-only networking mounts unconditional.

Changed

  • The OCI runtime is now exec'd rather than spawned. containerd cancels a runtime call by SIGKILLing its direct child, so the interceptor died and left runc — and the shim above it — orphaned at roughly 5 MiB each until the host rebooted.
  • /etc/hosts, /etc/hostname and /etc/resolv.conf are always made read-only. --oi-readonly-networking-mounts is retained as an accepted no-op so an existing daemon.json keeps working. Mount options are normalised, so a mount arriving with no options, or with rw after ro, ends up read-only too.
  • A signal-killed runtime is reported as signal death instead of exit 255.

⚠️ Deployment change required. Upgrading the binary alone does not stop the leak. Docker generates its own non-exec /bin/sh wrapper for any runtime with a non-empty runtimeArgs, which recreates the process layer this release removes. Move flags into your own execing wrapper script, point the runtime's path at it, and leave runtimeArgs unset.

Full rationale and verification: #188