Benutzer-Werkzeuge

Webseiten-Werkzeuge


containerd

Inhaltsverzeichnis

containerd ist „nur“ die Laufzeit & Daemon für Container. Man kann Container nicht direkt damit verwalten, sondern über Clients/CLIs oben drauf. Die wichtigsten sind:

  • nerdctl – Docker-ähnliche CLI (empfohlen für den Alltag)
  • ctr – Low-Level-Tool, gut für Debugging, weniger bequem
  • crictl – Für Kubernetes/CRI-Workloads

Docker verwendet „under the hood“ ebenfalls containerd. By default verwendet containerd runc als container runtime. Eine noch tiefere Schicht: das eigentliche OCI Runtime Tool, das Container Prozesse direkt mit Linux Linux Namespaces und cgroups startet. (containerd ruft runc auf, um Containerprozesse zu starten.)

Installation

# containerd installieren
sudo apt-get install -y containerd
 
# Standardkonfiguration erzeugen
sudo mkdir -p /etc/containerd
containerd config default | sudo tee /etc/containerd/config.toml >/dev/null
 
# systemd-cgroups aktivieren (wichtig, damit kubelet + containerd zusammenpassen)
sudo sed -i 's/SystemdCgroup = false/SystemdCgroup = true/' /etc/containerd/config.toml
 
# Dienst aktivieren
sudo systemctl enable --now containerd

Nerdctl

 
# Image holen
nerdctl pull nginx:alpine

# Container starten (Name, Port, Hintergrund)
nerdctl run -d --name web -p 8080:80 nginx:alpine

# Auflisten
nerdctl ps             # laufende
nerdctl ps -a          # alle

# Logs & Shell
nerdctl logs -f web
nerdctl exec -it web sh

# Stoppen/Starten/Entfernen
nerdctl stop web
nerdctl start web
nerdctl rm web

# Images/Volumes/Netze
nerdctl images
nerdctl volume ls
nerdctl network ls
# nerdctl compose benötigt "nerdctl full" bzw. cni/plugins installiert
nerdctl compose up -d
nerdctl compose down

CTR

# Image holen
sudo ctr images pull docker.io/library/nginx:alpine

# Container erstellen + starten
sudo ctr run -d --net-host docker.io/library/nginx:alpine web

# Auflisten
sudo ctr containers ls
sudo ctr tasks ls

# Logs gibt es so nicht direkt -> in den Container oder stdout umleiten
sudo ctr tasks exec --exec-id sh -t web sh

# Stoppen & entfernen
sudo ctr tasks kill -s SIGTERM web
sudo ctr tasks rm web
sudo ctr containers rm web

# Namespace beachten
sudo ctr namespaces ls
sudo ctr --namespace k8s.io containers ls
containerd.txt · Zuletzt geändert: 2025/11/11 20:45 von admin