Kaniko vs BuildKit: замеряем время, CPU и память сборки в кластере
<img src="https://habrastorage.org/getpro/habr/upload_files/227/2b3/e2e/2272b3e2e174a883495cfee980abc398.jpg" /><p>В Kubernetes-кластере рано или поздно встаёт вопрос: <strong>где собирать Docker image приложений?</strong> Вариант «на своей машине разработчика» не масштабируется на команду. Вынос сборок на отдельную виртуальную машину решает эту проблему, но создаёт накладные расходы на обслуживание инфраструктуры и лишает ключевых преимуществ k8s: отдельная ВМ не масштабируется горизонтально под нагрузку, параллельные джобы конкурируют за общие CPU, RAM и диск, а накапливающийся кэш требует регулярной очистки.</p><p>Классических ответов два — <strong>Kaniko</strong> и <strong>BuildKit</strong>. Kubernetes executor с использованием <strong>Kaniko</strong> или <strong>BuildKit</strong> лишен этих недостатков: сборка происходит в изолированных подах прямо на нодах кластера, ресурсы динамически масштабируются, а виртуальные машины для Docker-демона больше не требуются.</p> <a href="https://habr.com/ru/articles/1079670/?utm_source=habrahabr&utm_medium=rss&utm_campaign=1079670#habracut">Читать далее</a>
