Docker
GitHub Actions CI auf Docker
Bei Image-Builds wird jede Ebene neu erstellt, da der Cache niemals überlebt.
14m → 2m
Bildaufbau
92 %
Layer-Cache-Treffer
Bei Image-Builds wird jede Ebene neu erstellt, da der Cache niemals überlebt.
Warum es passiert
Der BuildKit-Cache ist entweder nicht vorhanden oder wird bei jedem Auftrag an eine Registrierung und wieder zurück gesendet.
Was zu ändern ist
- Verwenden Sie einen Remote-Builder, der den Layer-Cache auf seiner eigenen Festplatte speichert
- Bestellen Sie die Docker-Datei so, dass die Installation der Abhängigkeiten vor dem Kopieren der Quelle erfolgt
- Verwenden Sie mehrstufige Builds und kopieren Sie nur Artefakte in die letzte Phase
- Erstellen Sie arm64 nativ und nicht über QEMU
Docker auf runnerhut
Die einzige runnerhut-spezifische Zeile ist „runs-on: runnerhut-8vcpu-ubuntu-2404“. Alles andere sind Standard-GitHub Actions – dieselben Aktionen, dieselben Geheimnisse und dasselbe Berechtigungsmodell, das Sie heute verwenden.
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.
Verwandt
TerraformTerraform Init lädt bei jedem Lauf jeden Anbieter herunter.PulumiDie Plugin- und Abhängigkeitsinstallation wird vor jeder Vorschau ausgeführt.KubernetesDas Hochfahren eines Art- oder K3S-Clusters dauert Minuten, bevor die Tests beginnen.HelmDiagrammabhängigkeitsaktualisierungen und Linting laufen jedes Mal kalt ab.