Article on iximiuz.com. We're going to need a Linux VM with two terminals.
First, prepare a new container:
Create the first container:
Start the first container (from terminal 2):
Create a new container:
Run it (create + start):
Article on iximiuz.com. The lab can be done (ab)using a Play with Docker playground.
Working with images
Converting image into a bundle (not something you'd typically do):
Running a container:
Exploring namespaces:
docker logs
-like functionalitydocker build
-like functionality--publish
--restart=always
--net=bridge
Gradually building a PoC program.
Creating a client:
Pulling an image:
Fixing the namespace issue:
Starting a container:
List containers:
More examples:
Review:
nerdctl is a Docker-compatible CLI for containerd.
While in a killercoda playground (preferably on a worker node):
Interactive shell container (alpine):
Install CNI plugins:
Nginx daemon container:
Build (should fail due to missing BuildKit):
Watching Kubernetes workloads:
Building images right on the Kubernetes node (might be handy during development):
Running container w/o an image:
lima - Linux virtual machines, typically on macOS, for running containerd.
A macOS machine (Intel or Arm). Lima works on Linux too, but the whole point is to reproduce a Docker Desktop-like UX on macOS.
Like nerdctl, but prefixed with lima
(or use the nerdctl.lima
alias):
You can also SSH into the VM:
Article on iximiuz.com. The lab can be done (ab)using a killercoda playground playground.
Listing Pods and containers:
First, create a test workload:
Jump to the worker node:
Look up python
& sleep
processes:
Look up the corresponding Pod and containers:
Take the first look at namespaces:
Inspect app
and sidecar
containers: