CI runner yükü burst karakterlidir: pipeline başladığında CPU, RAM ve disk kısa sürede tepe yapabilir. Docker image build, test, dependency install ve artifact işlemleri farklı kaynak profillerine sahiptir. Parallel job sayısı doğrudan kaynak planına eklenmelidir.
Job başına CPU tüketimi ve aynı anda çalışan pipeline sayısına göre değişir. 2 paralel ağır build, 8 hafif lint job'dan daha fazla kaynak tüketebilir. GitLab Docker executor container tabanlı izole build ortamları sunar; Gitea runner da containerized job için Docker daemon kullanabilir.
Runner kapasitesini yalnız pipeline sayısından değil job tipinden hesaplayın.
Runner işi alır, izole çalışma ortamı oluşturur, dependency/cache çeker, build/test çalıştırır ve artifact sonucu geri yollar.
Docker-in-Docker veya docker.sock erişimi yüksek yetki doğurabilir. Public/fork kaynaklı job'lar için ayrı ve kısa ömürlü runner yaklaşımı daha güvenli olabilir.
Yoğun job sırasında host seviyesinde kaynak tepe değerini ölçün.
uptimefree -hiostat -xz 1 5docker stats --no-streamdocker system dfdf -hTek node basittir ancak tek failure domain oluşturur. Çoklu runner paralellik ve izolasyon sağlar fakat cache ve operasyon karmaşıklığı ekler.
Küçük ekip
Orta/yüksek pipeline
Untrusted/peak işler
CI job'larını Docker image'ları içinde izole çalışma ortamlarında çalıştıran executor türüdür.
Container job için Docker gerekir; host üzerinde job çalıştırma seçeneği de bulunur.
Dependency ve Docker layer cache yoğun pipeline'larda düşük latency disk süreleri build zamanını azaltabilir.
Günlük pipeline, aynı anda job sayısı, Docker build ve artifact boyutunu iletin; runner CPU/RAM/NVMe planını çıkaralım.