Skipbox

GitHub Actions neden yavaş? Her işte aynı kurulumu tekrarlamayın

Yavaş bir GitHub Actions işinin büyük kısmı, ilk test çalışmadan önce geçer. Node’u kurmak, bağımlılıkları indirmek, Docker imajını derlemek: her push’ta aynı dakikalar, ekibinizden biri yeşil bir kontrol beklerken. Dakika başına faturalandırmada bu dakikaların parasını da ödersiniz.

Skipbox, makinesini işler arasında tutan bir GitHub Actions runner’ıdır; bir işin kurduğu şeyler bir sonraki iş için hâlâ disktedir. Tek bir satırı, runs-on: skipbox satırını değiştirin; iş size ait makinede, ayda sabit $39 karşılığında sınırsız dakikayla çalışır.

Her iş boş bir VM’de başlar

GitHub’ın barındırdığı runner, her iş için yeni bir sanal makinedir. Son işin indirdiği veya derlediği hiçbir şey onda yoktur; bu yüzden her iş aynı durumu yeniden kurar:

İlk üç satır yeni hiçbir şey üretmez. Makineyi dün olduğu yere geri getirir.

GitHub’ın önbelleği bunu yumuşatır ama değiştirmez. Depo başına 10 GB tutar, 7 gün boyunca hiçbir işin okumadığı girdileri siler ve yeni bir özellik dalı başka bir özellik dalının önbelleğini okuyamaz. İsabet olsa bile her çalıştırmada bir arşiv indirilip açılır.

Beklemenin size maliyeti

Diyelim ki kurulum her işin 3 dakikasını alıyor ve ekibiniz günde 100 iş çalıştırıyor. Bu, makineyi geri kurmaya harcanan günde 300 dakika runner süresi demektir ve her pull request kendi payını bekler. İncelemeler daha geç başlar, birleştirmeler daha geç gerçekleşir, mühendisler beklerken başka bir işe geçer.

Dakika başına faturalandırmada bu dakikalar faturadadır. Aylık dakikaya göre 4 vCPU’luk bir runner:

GitHub tutarları, GitHub Team’e dahil kullanım düşüldükten sonraki faturadır. Kendi dakikalarınızı ana sayfadaki hesaplayıcıya girin; giriş gerekmez.

Çalıştırma sayısı da yalnızca artar:

  • Kod yazan yapay zeka ajanları. Ajanın her push’u CI’ı başlatır. Bekleme de fatura da çalışan sayısıyla değil push’larla büyür.
  • Daha çok test. Bir uçtan uca test paketi veya matris, eklediği her işte kurulumu tekrarlar.
  • Bütçeler. Faturayı bir GitHub bütçesiyle sınırlayın; işler ay ortasında başlamaz olur ve bu da birleştirmeleri durdurur.

Kendiniz hızlandırmak başlı başına bir proje

GitHub’ın barındırdığı runner’larda kalıp onları hızlandırmak, şuna benzer işleri üstlenmek demektir:

  • Önbellekleri kilit dosyası hash’lerine göre anahtarlamak ve isabet edene kadar restore-keys ayarlamak
  • buildx eklemek ve Docker’ın önbelleğini cache-to ile, yine aynı 10 GB içinde dışa aktarmak
  • Testleri parçalara bölmek; her parça kurulumu tekrarlar ve faturalandırılan dakikalar artar
  • Ya da kendi self-hosted runner’ınızı çalıştırmak: makine hazırlama, işletim sistemi güncellemeleri, işler arasında temizlik ve çöktüğünde onarma

Bunların her biri her şeyi unutan bir makinenin etrafından dolaşır. Skipbox makineyi tutar; hiçbirine gerek kalmaz.

Skipbox’ta değişenler

Kurulum diskte kalır. İşleriniz hesabınıza ait makinede çalışır ve makine işler arasında kalır. Docker imajları, katmanları ve derleme önbelleği; npm, pip, Gradle ve diğerleri için paket önbellekleri; setup-node ve benzerlerinin kurduğu araçlar. GitHub’ın önbellek alanının en az 7 katı; 7 gün sonra silinme yok, dal kuralı yok.

Sabit fiyata daha büyük makineler. Derleyiciler ve test çalıştırıcıları çekirdek başına bir işçi başlatır; daha çok çekirdek, CPU’ya bağlı adımları kısaltır.

Her planda dakikalar sınırsızdır. Skipbox işleri GitHub dakikası kullanmaz; bu yüzden bir GitHub bütçesi onları asla durdurmaz.

Bakılacak makine yok. Skipbox makineyi hazırlar, işletim sistemini ve araçları günceller, her işten sonra temizlik yapar, sağlık kontrolü çalıştırır ve kontrolü geçemeyen makineyi yeniden oluşturur.

Geçiş tek satır

jobs:
  build:
    runs-on: skipbox # was ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - run: npm ci && npm test
  1. GitHub ile Skipbox’a giriş yapın.
  2. Skipbox GitHub App’i yükleyin ve depoları seçin.
  3. runs-on satırını değiştirin ve push edin.

İlk işin kurduğu şeyler ikinci iş için diskte olur.

Güvenlik

  • Makine yalnızca hesabınıza aittir. Başka hiçbir şirketin işleri onda çalışmaz.
  • Her işten sonra runner’ın kimlik bilgileri, süreçleri ve container’ları silinir. 13 Kasım 2026’dan itibaren checkout’unuz ve derleme çıktısı (Cargo’nun target/ dizini) sonraki işleriniz için size ait makinede kalır; Her iş için temiz VM ayarı her işe yeni bir makine verir.
  • Yazma erişimi olmayan kişilerin kodu (örneğin fork’lardan gelen pull request’ler) yeni, tek kullanımlık bir makinede çalışır.

Ayrıntılar işler nasıl yalıtılır sayfasında.

En yavaş işinizde deneyin

Deneme 7 gün ya da 3.000 iş dakikası boyunca, hangisi önce dolarsa, ücretsizdir ve kart istemez. En yavaş işinizi runs-on: skipbox satırına taşıyın, art arda iki kez çalıştırın ve adım sürelerini GitHub’dakilerin yanına koyun.

SSS

GitHub Actions neden bu kadar yavaş?

GitHub’ın barındırdığı bir runner’daki her iş, son çalıştırmadan hiçbir şey taşımayan yeni bir VM’de başlar; bu yüzden testleriniz başlamadan önce araçlarını indirir, bağımlılıklarını yeniden kurar ve Docker imajlarını yeniden derler. Skipbox işlerinizi hesabınıza ait makinede çalıştırır ve bu durumu diskinde tutar; bir sonraki iş, sonuncusunun bıraktığı yerden başlar.

actions/cache ekledim. İş akışım neden hâlâ yavaş?

Önbellek isabet etse bile her işte bir arşiv indirilip açılır, çünkü VM her seferinde yenidir. Ayrıca GitHub’ın önbelleği depo başına 10 GB tutar, 7 gün kullanılmayan girdileri siler ve kardeş bir daldan okunamaz. Skipbox’ta paket önbellekleri ve Docker katmanları zaten makinenin diskindedir, yönetilecek anahtar yoktur.

GitHub Actions’ta Docker derlemelerini nasıl hızlandırırım?

Derlemeye son derlemenin katmanlarını verin. GitHub’ın barındırdığı runner’larda bu, önbelleği buildx ile dışa aktarıp her çalıştırmada içe aktarmak demektir; yine aynı 10 GB sınırı içinde. Skipbox’ta Docker’ın imajları ve derleme önbelleği işler arasında makinede kalır; docker build katmanları kendiliğinden yeniden kullanır.

Skipbox’ı kullanmak için iş akışlarımı yeniden yazmam gerekir mi?

Hayır. Linux işleri için runs-on değerini skipbox yapın. Makine Docker, Node.js ve Python ile Ubuntu 24.04 çalıştırır; adımlarınız ve action’larınız olduğu gibi çalışır.

Kendi yavaş işimde ücretsiz deneyebilir miyim?

Evet. Deneme 7 gün ya da 3.000 iş dakikası sürer, hangisi önce dolarsa, ve kart istemez. En yavaş işinizi runs-on: skipbox satırına taşıyın, art arda iki kez çalıştırın ve adım sürelerini GitHub’dakilerle karşılaştırın.

Güncellendi: 11 Kasım 2026

Her zaman hazır önbellekle daha hızlı CI/CD

Sabit fiyatla hazır bekleyen runner’ınız

Tam kullanımda maliyet GitHub’ın 1/12 kadarı. Fiyat sabit, yani gün boyu çalıştırın. GitHub’ın 7 katı önbellek alanı.

  • Kart gerekmez
  • GitHub ile giriş
  • İstediğiniz zaman iptal edin