LinuxKit – immutable infrastructure for FaaS
LinuxKit is a set of tools for preparing immutable sets of infrastructure. It is designed to compose containers into a ready-to-use OS. Of course, an OS produced by LinuxKit is for running containers. To make an immutable and scalable infrastructure for FaaS platforms, LinuxKit is one of the best choices out there.
Here's a sample of a LinuxKit YAML file to build an immutable OS for Docker. The kernel block is saying that this OS will boot with Linux Kernel 4.14.23. The boot
command, cmdline
, says that the kernel will be starting with consoles on four different TTYs:
kernel: image: linuxkit/kernel:4.14.23 cmdline: "console=tty0 console=ttyS0 console=ttyAMA0 console=ttysclp0"
The four next containers declared inside the init
block are the base programs that will be unpacked directly onto the filesystem. All the init
level programs include runc
and containerd. Also, the CA certificates will be installed directly onto the filesystem before the programs...