spyro
spyro copied to clipboard
Support to multiple dockers in single CI/RUNNER
🚀 Feature Request: Support for Multiple Docker Runners in a Single CI Setup
📚 Context
We're exploring advanced configurations for GitHub Actions using Actions Runner Controller (ARC), particularly the new support for runner scale sets.
Start Point / Reference:
➡️ https://docs.github.com/en/actions/tutorials/use-actions-runner-controller/deploy-runner-scale-sets#runner-scale-set
📌 Objective
Enable support for multiple Docker containers to run in isolation within a single ARC-based runner scale set. This is critical for use cases involving:
- Multi-service integration tests
- Containerized toolchains
- Parallel job execution in isolated containers
💡 Proposed Solution
- Evaluate runner pod customization (
runnerSpec.containers[]) to run sidecar Docker containers - Validate the use of Docker-in-Docker (
dind) or Kubernetes sidecars for job isolation - Consider dynamic volume mounts and network namespaces per container
🔍 To Investigate
- ARC compatibility with
containerjob definitions inside workflow YAML - Runner-level configuration to support multiple parallel containers per workflow
- Effects on auto-scaling behavior and resource limits in
runner scale sets
✅ Expected Outcome
A flexible runner architecture where multiple Docker jobs can run concurrently or sequentially within a single CI runner context — without requiring multiple full runners per container.