Skip to content

Smoke test fails #16

Description

@noperator

Today I installed membrane on a new macOS machine and ran into issues during the install process. The "basic startup" smoke test failed in a way I hadn't seen before. Used Claude to dig in and was able to fix it. Summary below.


Docker 29.5.0 changed the default OCI container spec to include a private time namespace on kernels that support it (moby/moby#52326). Sysbox-runc doesn't support the time namespace type, so any container run with --runtime=sysbox-runc fails at creation:

docker: Error response from daemon: failed to create task for container: failed to create shim task: OCI runtime create failed: namespace {"time" ""} does not exist

Hit this on a fresh Colima VM (Ubuntu 24.04, kernel 6.8.0-117-generic) after install-linux.sh installed and registered Sysbox — smoke Test 1 (basic startup) fails every time.

Also tracked upstream: nestybox/sysbox#1011 (same error, no fix from Nestybox side as of this writing).

To fix: Docker 29.5.0 added a feature flag to disable time namespaces and restore the pre-29.5.0 default (moby/moby#52577). Setting it in /etc/docker/daemon.json and restarting Docker resolves it:

{
  "features": {
    "time-namespaces": false
  }
}
sudo systemctl restart docker

After that, docker run --rm --runtime=sysbox-runc alpine:3.21 uname -r succeeds.

As a to-do, perhaps have install-linux.sh merge "features": {"time-namespaces": false} into daemon.json automatically, the same way it already merges the sysbox-runc runtime entry, so this doesn't bite new installs on Docker ≥29.5.0.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions