\

Show HN: Kern – container and resource runtime in a 1.5 MB binary, no daemon

42 points - today at 6:24 PM


I built kern because I needed a fast, zero-daemon tool to set CPU/RAM limits and run isolated tasks without the overhead of Docker. It's a single 1.5MB Rust binary using OCI images, cgroup v2, and namespaces. Boxes start in ~3.5ms. It's not a Kubernetes CRI or a microVM, just a standalone container and resource runtime for CLI and agents.

Source
  • chrisweekly

    today at 9:30 PM

    How does this compare to "smolvm" microvms from https://smolmachines.com?

      • realexweb

        today at 9:37 PM

        smolvm is a microVM .kern is plain OS-level isolation

    • k8sify

      today at 8:42 PM

      Can’t wait to play with this, thank you great work!

        • realexweb

          today at 8:50 PM

          thanks.. let me know how it goes or if you hit any issues

      • jeffbee

        today at 8:10 PM

        It looks cool and I am building it r.n. but the submission title was a little misleading as it says "container ... runtime" right there, and I guess it is, but it is not a CRI implementation.

          • realexweb

            today at 8:24 PM

            Fair, and it's not CRI. The README's limits section says "Not a Kubernetes runtime. No CRI. Use containerd or CRI-O." I meant runtime in the docker/podman sense, pull and build and lifecycle in one binary, and you're right that the word is overloaded enough that the title doesn't carry that by itself.

            Since you're building it, two things you'll hit before you hit the docs. cargo install needs the package name, because it searches the whole repo and finds three packages with binaries (the CLI, the fuzz harness, the Windows shim):

            cargo install --git https://github.com/getkern/kern getkern --locked

            And a source build is 1.91 MB, not the 1.5 in the title. The release binary is smaller because CI builds it with a pinned nightly, build-std and optimize_for_size, on an opt-level="z" profile; the source stays plain stable Rust on purpose, so building doesn't need nightly.

            Interested in what breaks.

        • today at 9:37 PM

          • rizky05

            today at 10:19 PM

            [dead]

            • realexweb

              today at 6:29 PM

              [flagged]