🧪 Tech-Lab & How-To Base von Sebastian Teßmann • Zu den Produktivservices: tessmann-digital.de

📚 Archiv

Supply Chain Security: Docker-Updates absichern mit Trivy und Watchtower CVE-2026-98432: Warum ein Kernel-Update allein nicht reicht (und echtes System-Hardening) Home Assistant vs. Alexa: Das echte Smart Home (inkl. Pi-Setup, HACS & FRITZ!Box) Zero-Day abgewehrt: Die Anatomie der PHP-Lücke (CVE-2026-109618) und der ultimative Docker-Schutz Zero-Bloat Hosting: Nginx Proxy Manager, Apache & Fail2ban sicher unter Docker vereinen Checkmk Community Edition auf Debian 13: Der ultimative Guide (Installation, Distributed Monitoring, Custom Plugins & Gotify) Debian 13 vs. Windows Server im Enterprise-Einsatz: Performance, Härtung & Top 20 CLI-Befehle Cyberkrieg gegen den Mittelstand: Unsere Migration auf Proxmox, OPNsense & Zero-Trust Open Source vs. Payware: Der ehrliche Vergleich für KMU & IT-Infrastrukturen Bye-bye VMware: Mein Weg über Hyper-V zu Proxmox VE Tutorial: High-Performance Cloud mit Seafile auf Debian 13 & Proxmox VE Tutorial: Portainer EE auf CE downgraden & sicherer Host-Umzug Tutorial: CorePlan via Docker deployen (HTTPS out-of-the-box) Tutorial: Eigenes Docker Image bauen (Apache, PHP, Auto-SSL & HTTP zu HTTPS Redirect) Proxmox Unified Console (PUC): Das All-in-One Dashboard für PVE, PBS & PMG Eigener Bitcoin Solo Pool: Full Node (bitcoind), public-pool Backend & individuelles PHP-Dashboard im Docker-Stack OPNsense: HAProxy als Reverse Proxy mit Let's Encrypt SSL-Offloading & SNI / ACL-Routing Mobiles Arbeiten & Kanzlei-Zugriff: WireGuard VPN auf der FRITZ!Box, Windows & iPhone inkl. NAS-SMB-Mount Tschüss Windows, hallo Pinguin: Der ehrliche Leitfaden für den Linux-Umstieg (und warum CachyOS mein Gaming rettete) Eigener Bitcoin Solo-Mining-Pool: Public-Pool & Pruned Full Node im Docker-Homelab Gaming auf Linux: Kompletter Umstieg von Windows zu CachyOS (Kernel, Steam, Heroic & MangoHud) Docker Container absichern: Rootless, Read-Only Filesystems & Linux Capabilities Portainer CE auf Docker: Schritt-für-Schritt Setup mit persistenten Volumes & Hardening Docker Engine & Compose V2 auf Debian/Ubuntu: Saubere Installation via Official Repository E-Mail Deliverability: SPF, DKIM & DMARC richtig konfigurieren (Schritt-für-Schritt) Proxmox VE & OPNsense: IPv6 /64 Subnetting (/80 WAN Transit & /96 LAN Segmentierung) OPNsense auf Proxmox VE: Vollständiges Setup von ISO-Download bis Hardening & DNSmasq Proxmox VE auf Debian 12 (Bookworm) installieren & Routed Network (vmbr0/vmbr1) einrichten

Docker Engine & Compose V2 auf Debian/Ubuntu: Saubere Installation via Official Repository

Viele Distributionen wie Debian und Ubuntu bieten in ihren Standard-Repositories eigene Pakete wie docker.io an. Diese sind jedoch oft monatealt, unterstützen moderne Compose V2 Features nicht und erhalten Sicherheitsupdates verzögert. In diesem Leitfaden richten wir die offizielle Docker Engine direkt über das Docker Inc. Repository ein.

1. Warum offizielle Repositories statt `apt install docker.io`?

  • Compose V2 Integration: Unterstützung für das moderne docker compose (statt des veralteten Python-basierten docker-compose).
  • Aktuelle Runtimes: Neueste Versionen von containerd und runc mit Kernel-Optimierungen und Sicherheits-Patches.
  • Zukunftssicherheit: Kompatibilität mit modernsten Dockerfile-Build-Features (BuildKit).

2. Veraltete Pakete & Konflikte bereinigen

Vor der Neuinstallation müssen alle inoffiziellen oder älteren Docker-Pakete restlos entfernt werden:

sudo apt remove docker docker-engine docker.io containerd runc -y
sudo apt update
sudo apt install ca-certificates curl gnupg lsb-release -y

3. Offiziellen GPG-Schlüssel & Repository-Keyring einbinden

Nach modernem Debian-Standard speichern wir GPG-Schlüssel nicht mehr unsicher unter /etc/apt/trusted.gpg, sondern in einem isolierten Keyring-Verzeichnis:

# Verzeichnis für Schlüsselbund anlegen
sudo install -m 0755 -d /etc/apt/keyrings

# Offiziellen Docker GPG-Key laden und de-armorisieren
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg

# Repository zur Paketquellen-Liste hinzufügen
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \
  $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

(Hinweis für Ubuntu: Ersetze in den beiden Befehlen debian durch ubuntu).

4. Docker Engine, CLI & Compose Plugin installieren

sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y

Prüfe nach der Installation den Daemon-Status:

sudo systemctl enable --now docker
sudo systemctl status docker

5. Non-Root-Rechte konfigurieren (Best Practice)

Standardmäßig lauscht der Docker-Socket auf Root-Rechte. Um Docker-Befehle ohne ständiges sudo auszuführen, fügen wir den aktuellen Benutzer zur docker-Gruppe hinzu:

# Benutzer zur Gruppe hinzufügen
sudo usermod -aG docker $USER

# Neue Gruppenmitgliedschaft ohne Logout aktivieren
newgrp docker

# Funktionstest ohne sudo
docker run --rm hello-world