The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning. Learn more →
Top 23 Rust Container Projects
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
kata-containers
Kata Containers is an open source project and community working to build a standard implementation of lightweight Virtual Machines (VMs) that feel and perform like containers, but provide the workload isolation and security advantages of VMs. https://katacontainers.io/
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
docker-compose-wait
A simple script to wait for other docker images to be started while using docker-compose (or Kubernetes or docker stack or whatever)
-
kuasar
A multi-sandbox container runtime that provides cloud-native, all-scenario multiple sandbox container solutions.
-
Mayastor
Dynamically provision Stateful Persistent Replicated Cluster-wide Fabric Volumes & Filesystems for Kubernetes that is provisioned from an optimized NVME SPDK backend data storage stack.
-
staticvec
Implements a fixed-capacity stack-allocated Vec alternative backed by an array, using const generics.
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
Project mention: Show HN: Add AI code interpreter to any LLM via SDK | news.ycombinator.com | 2024-04-12Hi, I'm the CEO of the company that built this SDK.
We're a company called E2B [0]. We're building and open-source [1] secure environments for running untrusted AI-generated code and AI agents. We call these environments sandboxes and they are built on top of micro VM called Firecracker [2].
You can think of us as giving small cloud computers to LLMs.
We recently created a dedicated SDK for building custom code interpreters in Python or JS/TS. We saw this need after a lot of our users have been adding code execution capabilities to their AI apps with our core SDK [3]. These use cases were often centered around AI data analysis so code interpreter-like behavior made sense
The way our code interpret SDK works is by spawning an E2B sandbox with Jupyter Server. We then communicate with this Jupyter server through Jupyter Kernel messaging protocol [4].
We don't do any wrapping around LLM, any prompting, or any agent-like framework. We leave all of that on users. We're really just a boring code execution layer that sats at the bottom that we're building specifically for the future software that will be building another software. We work with any LLM. Here's how we added code interpreter to Claude [5].
Our long-term plan is to build an automated AWS for AI apps and agents.
Happy to answer any questions and hear feedback!
[0] https://e2b.dev/
[1] https://github.com/e2b-dev
[2] https://github.com/firecracker-microvm/firecracker
[3] https://e2b.dev/docs
[4] https://jupyter-client.readthedocs.io/en/latest/messaging.ht...
[5] https://github.com/e2b-dev/e2b-cookbook/blob/main/examples/c...
According to this discussion - starting with Bottlerocket 1.13.0 (Mar 2023) new distributions will default to using Cgroups v2 interface for process organization and enforcing resource limits.
Project mention: The Linux Kernel Prepares for Rust 1.77 Upgrade | news.ycombinator.com | 2024-02-18This is a good guide on building small Rust binaries: https://github.com/johnthagen/min-sized-rust
This talks about going to extreme lengths on making the smallest Rust binary possible, 400 bytes when it was written, https://darkcoding.net/software/a-very-small-rust-binary-ind...
The thing is, you lose a lot of nice features when you do this, like panic unwinding, debug symbols, stdlib… for kernel and some embedded development it’s definitely important, but for most use cases, does it matter?
FROM wordpress:cli # Install make tool USER root RUN apk add --no-cache make # Make docker-compose wait for container dependencies be ready # Add the wait script to the image ENV WAIT_VERSION 2.7.2 ADD https://github.com/ufoscout/docker-compose-wait/releases/download/$WAIT_VERSION/wait /wait RUN chmod +x /wait # Add Makefile to scripts dir ADD Makefile entrypoint.sh /scripts/ RUN chmod +x /scripts/entrypoint.sh ENTRYPOINT [ "/scripts/entrypoint.sh" ] USER 33:33 CMD ["wp", "shell"]
This looks a lot like Toast [1], except that Toast runs your tasks in a (more) reproducible containerized environment to help eliminate the "works on my machine" problem.
[1] https://github.com/stepchowfun/toast
Project mention: The advantage of WASM compared with container runtimes | news.ycombinator.com | 2023-05-28Right now most early examples alas boot a container with a wasm runtime for each wasm instance, which is a sad waste. The whole advantage of wasm should be very lightweight low overhead wasm runtime instances atop a common wasm process. Having a process or container for each instance loses a ton of the benefit, makes it not much better than a regular container.
Thankfully there is work like the Containerd Sandbox API which enables new architectures like this. https://github.com/containerd/containerd/issues/4131
It's still being used to spawn a wasm processes per instance for now, but container runtime project Kuasar is already using the Sandbox API to save significant resources, and has already chimed in in comments on HN to express a desire to have shared-process/multi-wasm-instamxe runtimes, which could indeed allow sub ms spawning that could enable instance per request architectures. https://github.com/kuasar-io/kuasar
Kubernetes (sorta) https://github.com/nxthat/nanocl It's still in early stages rn but always looking for more contributors!
Project mention: Posting asking if the Rust Reddit community is overly regulated gets regulated. | /r/programmingcirclejerk | 2023-05-27This crate of mine for example is currently literally unusable until the deeply fundamental features that John Random kinda-sorta removed in this pull request, ostensibly in preparation for whatever shittily stated syntax is ultimately establihed by whatever the hell "keyword generics" actually is (I really don't know, like this isn't a joke, I fundamentally do not understand what the fuck they're proposing at all in any way or how it's meaningfully and usefullly different from the previous syntax).
Got the basics of my automated asciinema asciicast generator working yesterday. It's primarily designed for automating the creation of terminal app demos, similar to the one I have for podlet.
Rust Containers related posts
- Rust wont save us, but its ideas will
- Howto: WASM runtimes in Docker / Colima
- Maestro: A Linux-compatible kernel in Rust
- Fly Kubernetes
- Virtual Machine as a Core Android Primitive
- Youki: A container runtime written in Rust
- Bottlerocket OS
-
A note from our sponsor - WorkOS
workos.com | 24 Apr 2024
Index
What are some of the best open-source Container projects in Rust? This list will help you:
Project | Stars | |
---|---|---|
1 | firecracker | 24,024 |
2 | bottlerocket | 8,141 |
3 | min-sized-rust | 7,410 |
4 | youki | 5,778 |
5 | kata-containers | 4,842 |
6 | habitat | 2,567 |
7 | vagga | 1,849 |
8 | docker-compose-wait | 1,588 |
9 | toast | 1,543 |
10 | kuasar | 1,170 |
11 | trow | 872 |
12 | Mayastor | 636 |
13 | nanocl | 602 |
14 | vas-quod | 441 |
15 | dockeye | 401 |
16 | stevedore | 273 |
17 | staticvec | 267 |
18 | podlet | 220 |
19 | rash | 202 |
20 | containrs | 124 |
21 | dcp | 103 |
22 | pura | 102 |
23 | libpathrs | 66 |
Sponsored