Przejdź do treści

inżynieria

Architektura Docker dla inżynierów CI

Daemon, Containerd, BuildKit i snapshotter — co każdy z nich robi i który spowalnia kompilację.

{autor} · {rola} · {data} · {minuty} {minutyLabel}

Kawałki

Który jest powolny

  • Powolne przed wykonaniem jakiegokolwiek kroku → uruchomienie demona i ściągnięcie obrazu; naprawić za pomocą ciepłej prowadnicy i przeciąganej pamięci podręcznej
  • Powolne podczas KOPIOWANIA i URUCHAMIANIA z długim oczekiwaniem na we/wy → migawka na dysku podłączonym do sieci; napraw za pomocą lokalnego NVMe
  • Odbudowanie warstw, które nie uległy zmianie → Pamięć podręczna BuildKit; napraw kolejność instrukcji i zaplecze pamięci podręcznej
  • arm64 katastrofalnie powolny → QEMU, a nie Docker; naprawić z rodzimymi biegaczami

Twój następny build może być dwa razy szybszy i o połowę tańszy

Zacznij za darmo. Odejście to ta sama jedna linia — ten diff też publikujemy.