firebuild
linuxkit
firebuild | linuxkit | |
---|---|---|
7 | 15 | |
97 | 8,305 | |
- | 0.3% | |
0.0 | 9.0 | |
about 3 years ago | 2 months ago | |
Go | Go | |
GNU Affero General Public License v3.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
firebuild
-
Ask HN: What's the most creative 'useless' program you've ever written?
https://github.com/combust-labs/firebuild
Build firecracker vmms from dockerfiles. Learned a ton, never did anything with it but I want believe it influenced a bunch of people to look deeper into firecracker.
-
My VM is lighter (and safer) than your container
A Dockerfile is just a file with a bunch of commands to execute and get a working "computer". https://github.com/combust-labs/firebuild is fairly aged translation of the Dockerfile to a VM rootfs.
-
We clone a running VM in 2 seconds
Regarding turning Dockerfiles into a MicroVM: https://gruchalski.com/posts/2021-03-23-introducing-firebuil..., on GitHub: https://github.com/combust-labs/firebuild. This could get you started.
Disclaimer: I’m the author.
-
Podman 4.0.0
> See, and in almost all of my use-cases, I really do. I do HPC computing, which is almost always a multi-tenant environment.
Maybe you need firecracker with something along the lines of https://github.com/combust-labs/firebuild?
-
Hypervisor for multi-tenant computing, like it should be
I was the one who posted that question and I deleted it because I understood I was asking to compare apple to oranges. Firecracker uses KVM under the hood. With regards to the overhead, sure, there's going to be resources needed but firecracker is pretty good at running VMs will low level overhead. We're talking thousands on a single host.
I've done some fair share of evaluating firecracker for https://github.com/combust-labs/firebuild and the need to provision is red herring. firebuild can run a VM directly from a Dockerfile and Docker image. Fly.io team does something similar. It's basically a fully functional app out of the container within a matter of milliseconds.
What would be nice is to see a direct comparison between your solution and firecracker.
-
Docker Without Docker
I am working on something like this: https://github.com/combust-labs/firebuild.
From a Dockerfile, it's not as simple without creating an image first.
linuxkit
-
Docker Containers | Linux Namespaces | Container Isolation
Note: Namespaces are a feature of the linux kernel. But Docker allows you to run containers on Windows and Mac... how does that work? The secret is that embedded in the Docker product or Docker engine is a linux subsystem. Docker open-sourced this linux subsystem to a new project: LinuxKit. Being able to run containers on many different platforms is one advantage of using the Docker tooling with containers.
-
Gokrazy – Go Appliances
Another project that aims to deliver this is Linuxkit (https://github.com/linuxkit/linuxkit). All the components they ship are written in memory safe languages (usually Go) and run as containers under containerd. You can build a custom image very easily, fully defined as a YAML file.
- How to connect to a docker container service when it's running on a mac?
-
An overview of single-purpose Linux distributions
docker-the-company maintained https://github.com/linuxkit/linuxkit when I worked there. I have no idea who maintains it now, but it looks like it is still active (presumably still docker-the-company, since their adopters list [1] lists docker desktop).
[1]: https://github.com/linuxkit/linuxkit/blob/master/ADOPTERS.md
-
Create a minimalist OS using Docker Containers and Hashicorp Packer
LF-Edge EVE project leverages Linuxkit to create custom OSs for Edge Devices which in turn leverages Containers as Lego Blocks
-
RootFS Tooling
LinuxKit - Docker
-
Unpopular opinion: I was promised lightweight containers but I got yet another VM
Behind the scenes Docker Desktop for Mac spawns a linuxkit VM with a bit of extra stuff like NFS to enable mounting Mac paths into containers. In the Docker Desktop settings you'll find the current resource assignment for that VM. That is pretty much reserved for docker so that it does not have to compete with MacOS processes for available resources.
- Open source components of Docker for Mac
-
What happened to the nice Ansible cloud (provisioning) listing?
That said... you might want to check out linuxkit
-
Ask HN: How are you using unikernels?
The definition of what a unikernel is needs to be narrowed down, a lot of these projects in the space (not all the ones listed above) have material differences that are not clear:
- some run only one language
- some require recompilation
- some essentially swap out libraries, others do something closer to dropping your already mostly static binary in a minimal disk image
- some build pid1 processes, others VMs images
Anyway, here are some additional entries in the space:
- https://ssrg-vt.github.io/hermitux/
- https://github.com/linuxkit/linuxkit (more embedded/minimal VM than unikernel)
- https://nabla-containers.github.io/ (runs on Solo5)
I am going through using Linuxkit to build AMIs for cloud providers now. I wouldn’t necessarily class linuxkit as a universal project because it doesn’t have the hallmark blurring of user and kernel space or kernel-as-a-library but you can customize the kernel so it’s an adjacent idea, and I think it’s the one most likely to be in actual use at non-hyperscalers.
What are some alternatives?
cloud-hypervisor - A Virtual Machine Monitor for modern Cloud workloads. Features include CPU, memory and device hotplug, support for running Windows and Linux guests, device offload with vhost-user and a minimal compact footprint. Written in Rust with a strong focus on security.
nanos - A kernel designed to run one and only one application in a virtualized environment
firecracker-containerd - firecracker-containerd enables containerd to manage containers as Firecracker microVMs
unikraft - A next-generation cloud native kernel designed to unlock best-in-class performance, security primitives and efficiency savings.
mariadb-podman-socket-activation - Demo of a templated systemd user service that runs rootless Podman and starts MariaDB with socket activation
lxd - Powerful system container and virtual machine manager [Moved to: https://github.com/canonical/lxd]
libnetwork - networking for containers
mirage - MirageOS is a library operating system that constructs unikernels
kubevirt - Kubernetes Virtualization API and runtime in order to define and manage virtual machines.
firecracker-container
undocker