Zum Inhalt springen

Ingenieurwesen

Docker-Architektur für CI-Ingenieure

Daemon, Containerd, BuildKit und der Snapshotter – was jeder tut und welcher Ihren Build langsam macht.

{Autor} · {Rolle} · {Datum} · {Minuten} {MinutenLabel}

Bei den meisten Docker-Leistungsratschlägen handelt es sich um eine Liste von Dockerfile-Tricks. Es funktioniert besser, wenn Sie wissen, welche Komponente jeder Trick tatsächlich anspricht.

Die Stücke

Welches ist langsam?

  • Langsam, bevor ein Schritt ausgeführt wird → Daemon-Start und Image-Pull; Mit einem warmen Läufer und einem Pull-Through-Cache beheben
  • Langsam beim KOPIEREN und AUSFÜHREN mit hoher E/A-Wartezeit → der Snapshotter auf einer an das Netzwerk angeschlossenen Festplatte; mit lokalem NVMe beheben
  • Ebenen neu erstellen, die sich nicht geändert haben → BuildKit-Cache; Korrigieren Sie die Befehlsreihenfolge und das Cache-Backend
  • arm64 katastrophal langsam → QEMU, nicht Docker; Fix mit nativen Läufern

Ihr nächster Build könnte doppelt so schnell sein — zum halben Preis

Kostenlos starten. Der Wechsel zurück ist dieselbe eine Zeile — auch dieses Diff veröffentlichen wir.