Por qué usar un gestor de feature flags
El despliegue continuo asume una separación clara entre entregar un binario y activar una funcionalidad para los usuarios. Sin esa separación, cada release es binario: o todos ven el cambio, o nadie. Cuando algo falla, la única recuperación es un rollback completo del despliegue.
Unleash rompe este acoplamiento. Haces merge, despliegas, y activas la función manualmente o mediante rollout gradual configurable. Si algo va mal, desactivas el toggle en segundos — no hay pipeline de despliegue involucrado.
Unleash open source (Apache-2.0) cubre ambos casos con proyectos, entornos, estrategias de activación y log de auditoría completo.
Qué ganas con Unleash autoalojado
- Toggles en tiempo real — activa o desactiva una función sin redesplegar tu aplicación.
- Rollouts graduales — abre al 5 %, 20 %, 50 % de tus usuarios con targeting por userId, email o atributo personalizado.
- Entornos separados — estados de flags independientes para desarrollo, staging y producción.
- SDK multilenguaje — clientes oficiales para Node.js, Python, Go, Java, .NET, Ruby y PHP.
- Log de auditoría completo — cada cambio registra el autor, timestamp y motivo.
- Actualizaciones sin downtime —
docker compose pull && docker compose up -d.
Requisitos
Unleash está diseñado para funcionar en un VPS modesto. La configuración mínima recomendada es 1 vCPU y 1 GB de RAM — la app Node.js consume alrededor de 86 MB en reposo, PostgreSQL 17 unos 46 MB, para un total de aproximadamente 132 MB en condiciones de prueba. En producción con tráfico SDK activo, planifica 256 MB de margen.
No se necesita dominio para empezar — Unleash escucha en loopback y es accesible vía túnel SSH. Para acceso permanente desde tus aplicaciones y pipelines CI, adjunta un dominio desde tu panel de ServOrbit: nginx lo proxificará en HTTPS.
Desplegar Unleash en tu VPS ServOrbit
Pedir desde el Marketplace de ServOrbit
Desde tu área de cliente de ServOrbit, instala Unleash en un clic desde el Marketplace: selecciona la categoría Desarrollo, elige Unleash y confirma tu pedido. El stack Docker Compose (Unleash + PostgreSQL 17) arranca automáticamente con un healthcheck integrado.
Iniciar sesión en la UI de administración
Abre
https://<tu-dominio>/en el navegador. La página de login está en/auth/simple/login. Introduceadminy la contraseña de tu área de cliente de ServOrbit.Crear un proyecto y tu primera flag
En la UI de Unleash, crea un proyecto y añade un feature toggle. Elige el tipo (Release, Kill switch, Experiment) y añade una estrategia de activación (ej. rollout gradual al 10 %).
Configurar una estrategia de activación
Haz clic en tu flag, luego en Add strategy en el entorno de tu elección (por defecto
production). Elige Gradual rollout y fija el deslizador al 10 %. Haz clic en Save strategy — la flag está ahora activa para el 10 % de tus usuarios.Conectar tu aplicación con el SDK
Instala el SDK:
npm install unleash-clientopip install UnleashClient. Inicialízalo con la URL de tu API y una clave CLIENT. Llama aisEnabled('my-flag')donde quieras condicionar el comportamiento.Monitorizar y ajustar
La pestaña Metrics muestra evaluaciones positivas y negativas. Aumenta el rollout, cambia segmentos o desactiva la flag desde la UI — sin redespliegue.
Para flags de tipo Kill switch, activa los datos de impresión en tu SDK (impressionDataAll: true): cada evaluación genera un evento que puedes enrutar a tu stack de observabilidad (Glitchtip, Plausible) para correlacionar un rollout con cambios en tus métricas de negocio.
Gestión de entornos y promoción
Unleash open source crea dos entornos por defecto: development y production. Cada flag tiene un estado independiente por entorno — puedes activar una función en development para todo el equipo mientras mantienes el rollout de production en 0 %.
Para añadir un entorno staging, ve a Unleash → Settings → Environments → Add environment. Nómbralo staging y guarda. Cada flag mostrará ahora tres pestañas de entorno. El SDK debe inicializarse con environment: 'staging' (o 'development') para que las evaluaciones lleguen al estado correcto.
Un patrón común: activar una función en staging para todo el equipo de QA (estrategia UserIDs con los emails internos), y en production con un Gradual rollout al 5 %. Las dos estrategias coexisten en la misma flag, en entornos distintos — sin conflicto.
Tokens de API y seguridad
Unleash separa los tokens por tipo y entorno. Un token CLIENT da acceso de solo lectura al estado de las flags para un entorno dado — es el token para inyectar en tus aplicaciones. Un token ADMIN da acceso completo a la API de administración — reservado para scripts de despliegue o herramientas de integración, nunca embebido en código cliente.
Crea un token CLIENT en Unleash → Settings → API access → Add new API token. Elige el tipo CLIENT, selecciona el entorno (production) y el ámbito de proyectos. Copia el valor generado — solo se muestra una vez. Guárdalo en tus secretos de CI (variable de entorno UNLEASH_API_TOKEN) o en tu gestor de secretos.
En ServOrbit, Unleash está vinculado a 127.0.0.1 y expuesto solo a través de nginx. El puerto 4242 nunca es directamente accesible desde internet — nginx añade TLS, y solo el dominio proxificado responde en el puerto 443. La contraseña admin inicial está disponible en tu área de cliente; cámbiala en el primer acceso desde Unleash → Profile → Change password.
Historial CVE y por qué se fija la versión 8.0.3
Unleash 8.0.3 está fijado en la plantilla de ServOrbit por una razón concreta: dos vulnerabilidades fueron corregidas entre 8.0.0 y 8.0.3. CVE-2026-63004 (CVSS 5.5, SSRF) permitía a un administrador autenticado disparar solicitudes del servidor a endpoints de red internos a través de la configuración de webhooks. CVE-2026-63466 (CVSS 4.1, XSS almacenado) permitía inyectar HTML en las descripciones de flags. Ambas requieren autenticación y están completamente corregidas en 8.0.3. Fijar el tag exacto en lugar de :latest garantiza que siempre sepas qué versión está corriendo.