🧪 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

Portainer CE auf Docker: Schritt-für-Schritt Setup mit persistenten Volumes & Hardening

Für Administratoren, die Container-Stacks, Volumes, Netzwerke und Logs nicht ausschließlich über das Terminal verwalten möchten, ist Portainer Community Edition (CE) das ideale Werkzeug. In diesem Guide installieren wir Portainer sauber per Docker Compose mit persistentem Storage und erklären die wichtigsten Setup-Schritte.

1. Warum Portainer CE?

  • Stack-Management: Docker-Compose-Dateien direkt im Browser anlegen, starten und stoppen.
  • Live-Monitoring: Ressourcenauslastung (CPU/RAM) und Container-Logs in Echtzeit einsehen.
  • Image- & Volume-Bereinigung: Verwaiste Images und nicht genutzte Volumes per Klick aufräumen.

2. Verzeichnisstruktur & Docker Compose Datei

Erstelle ein dediziertes Verzeichnis für die Portainer-Konfiguration:

mkdir -p /home/docker/portainer
cd /home/docker/portainer
nano docker-compose.yml

Füge folgende Konfiguration ein:

version: "3.8"

services:
  portainer:
    image: portainer/portainer-ce:latest
    container_name: portainer
    restart: unless-stopped
    security_opt:
      - no-new-privileges:true
    ports:
      - "9000:9000"   # HTTP Web-UI (Für internen Reverse Proxy / LAN)
      - "9443:9443"   # HTTPS Web-UI (Mit selbstsigniertem Zertifikat)
      - "8000:8000"   # Optional: Edge-Agent Kommunikationsport
    volumes:
      - /etc/localtime:/etc/localtime:ro
      - /var/run/docker.sock:/var/run/docker.sock:ro
      - portainer_data:/data

volumes:
  portainer_data:
    name: portainer_data

3. Stack starten & Initialisierungs-Timeout beachten

Starte den Container im Hintergrund:

docker compose up -d

⚠️ Wichtiger Sicherheitshinweis:
Öffne nach dem Start sofort im Browser https://<DEINE-SERVER-IP>:9443. Aus Sicherheitsgründen schaltet Portainer den Einrichtungsassistenten nach genau 5 Minuten ab, falls noch kein Admin-Passwort vergeben wurde. Solltest du zu spät sein, hilft ein einfacher Neustart des Containers via docker compose restart.

4. Erste Schritte im Dashboard

  1. Vergib ein starkes Administrator-Passwort (mind. 12 Zeichen).
  2. Wähle die lokale Umgebung (Get Started / Local Environment).
  3. Portainer verbindet sich automatisch über den gemounteten /var/run/docker.sock mit deiner lokalen Docker-Engine.