Zum Inhalt springen

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

  1. Verwenden Sie einen Remote-Builder, der den Layer-Cache auf seiner eigenen Festplatte speichert
  2. Bestellen Sie die Docker-Datei so, dass die Installation der Abhängigkeiten vor dem Kopieren der Quelle erfolgt
  3. Verwenden Sie mehrstufige Builds und kopieren Sie nur Artefakte in die letzte Phase
  4. 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.