DevOps Challenge of the Week - Issue #2


Hello friends!

The first issue was rather a success, so here comes the second one in the new DevOps Challenge of the Week series.

This week, I'm happily presenting you with another batch of challenges - again, united by a single topic.

Fifty Shades of Container Runtimes

Docker might be the most popular (and user-friendly) container runtime, but it's definitely not the only one. Podman is a Docker replacement (kinda) by Red Hat folks, with an interesting feature of being fully daemonless. containerd - the lower-level daemon behind Docker can also serve as a full-fledged runtime given a good enough client (nerdctl) or enough skill (ctr).

So, here is the challenge: can you start containers using every one of the above runtimes?

Good luck!

P.S. Since the last issue, a dozen folks expressed their support for iximiuz Labs by purchasing Premium Access, and I'm truly grateful for it. But did you know that it's not the only reason to get it? For instance, docker pull nginx is x5 faster on the premium tier 🚀

Ivan Velichko

Building labs.iximiuz.com - a place to help you learn Containers and Kubernetes the fun way 🚀

Read more from Ivan Velichko

Hello friends! Ivan's here with another monthly roundup of all things Linux, Containers, Kubernetes, and Server Side 🧙 The issue's main topic is iximiuz Labs' largest-ever upgrade: Fresher and more streamlined look of the frontend UI 💙 A new 5.10 Linux kernel built with nftables support (finally, we can try out kube-proxy's nftables mode). New default playground user - laborant (yep, rootless containers learning for). New playgrounds: Ubuntu 24.04, Debian Trixie, Fedora, and Incus (yay! more...

Hello friends! Ivan's here with a slightly delayed July roundup of all things Linux, Containers, Kubernetes, and Server Side 🧙 What I was working on This month, I got nerd-sniped by cgroups. It all started when I ran into a pretty significant difference in how Docker and Kubernetes handle the OOM events. When you limit the memory usage of a multi-process Docker container, the OOM killer often terminates only one of the processes if the container runs out of memory. If this process is not the...

Hey there 👋 I spent a few weeks deep diving into cgroup v2, and I'm happy to share my findings with you! Everyone knows that Docker and Kubernetes use cgroups to limit the resources of containers and Pods. But did you know that it's very easy to run an arbitrary Linux process in a cgroup using much more basic tools? The only kernel's interface for cgroups is the virtual filesystem called cgroupfs typically mounted at /sys/fs/cgroup. Creating folders there and writing to files in them is...