Ctrl K
ComunidadGuías…
GITHUB · ANALIZADO

ephemeral-action-runner

Ephemeral Action Runner es un repositorio de GitHub Actions que proporciona runners de ejecución de trabajo de forma temporal, utilizando contenedores Docker Sandboxes microVM aislados para ejecutar tareas CI sin depender directamente del host.

Ficha actualizada 23 sept 2026, 6:00 · upstream 23 sept 2026, 5:48 · release v0.3.4

Ver códigoProblemas y ayudaRepositorio ↗
00

Qué es ephemeral-action-runner

Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.

EPAR mantiene una pila caliente de runners disponibles y cada uno se ejecuta dentro de un Docker Sandbox microVM con daemon privado, lo que proporciona aislamiento entre el contenedor y el sistema operativo del host. Después de completar un trabajo, el runner se destruye completamente (incluyendo su daemon privado) y se reemplaza por uno fresco. Esto permite a las organizaciones utilizar sus propios recursos para CI intensivo sin necesidad de orquestación compleja o clusters separados.

La arquitectura está diseñada para equipos que desean ejecutar tareas E2E, integraciones largas y cargas pesadas de Docker en su infraestructura existente, manteniendo un ciclo de vida de uno-runner por trabajo. La implementación se ejecuta desde Linux, macOS o Windows sin necesidad de una plataforma de orquestación adicional.

El sistema mantiene el estado de los runners disponibles mientras preserva la capacidad de iniciar nuevos trabajos inmediatamente después del cierre.

CASOS DE USO
  • Ejecutar pruebas E2E largas y complejas en máquinas existentes sin reemplazarlas
  • Procesar cargas pesadas de Docker que no se ejecutan directamente sobre el host
  • Realizar integración continua con contenedores privados o imágenes personalizadas
  • Gestionar pipelines CI intensivos en recursos donde el host es insuficiente
  • Implementar pruebas de carga y estrés sin afectar la disponibilidad del sistema operativo base
  • Ejecutar tests de Docker que requieren aislamiento completo entre el contenedor y el host
PUNTOS DESTACADOS
  • Utiliza Docker Sandboxes microVMs con daemon privado para aislar cada ejecución
  • Mantiene runners disponibles en estado 'warm' sin mantener estado persistente
  • Elimina la necesidad de orquestación adicional como Kubernetes o Cloud Run para CI
  • Permite ejecutar workflows que requieren acceso a secretos y servicios del host
  • Soporta múltiples plataformas (Linux, macOS, Windows) con un solo repositorio
  • Ofrece una arquitectura escalable donde se pueden agregar más runners sin afectar el rendimiento
PRECAUCIONES
  • Depende de Docker para la ejecución de cada runner, lo que introduce latencia en entornos con Docker lento o inestable
  • No soporta múltiples runners simultáneos por instancia (solo uno activo a la vez)
  • La configuración del GitHub App requiere permisos adicionales y no es automática
  • El uso de Docker Sandboxes puede introducir overhead adicional en contenedores existentes
  • No incluye herramientas de observabilidad nativas como métricas o logs centralizados
  • La gestión de secretos dentro de los runners depende de la configuración del GitHub App
01

Perfil de infraestructura

Estimación inicial derivada del repositorio y de los servicios detectados.

CPU1 vCPUrecomendación inicial
MEMORIA1 GBRAM estimada
DISCO20 GBalmacenamiento base
COMPLEJIDADlownivel de operación
02

Despliegue detectado

Qué señales reales de instalación hemos encontrado.

Despliegue manual

Para iniciar EPAR, se descarga el código fuente y se ejecuta `./start`, que abre un wizard para configurar el GitHub App, grupo de runners y Docker Sandboxes. Se recomienda ejecutar `sbx diagnose` antes de usar Docker Sandboxes para verificar la configuración. Para cada runner, se añade la etiqueta `self-hosted` en los workflows. Se debe mantener el proceso activo durante todo el ciclo de vida del runner (desde que acepta trabajo hasta su eliminación). La gestión de secretos y permisos se realiza a través del GitHub App configurado. Para escalabilidad, se pueden agregar más runners mediante un grupo de runners con múltiples instancias.

—Dockerfile
—Compose
—One-click
03

Stack y dependencias

Componentes inferidos a partir de manifests, configuración y documentación.

FRAMEWORKS
Go
SERVICIOS
MongoDB
BASES DE DATOS
MongoDB
PUERTOS
No detectados
06

Experiencia real de la comunidad

Ayuda a contrastar la estimación automática con instalaciones reales.

Todavía no hay datos comunitarios para este proyecto.