Sobre el proyecto

gVisor proporciona una capa sólida de aislamiento entre las aplicaciones en ejecución y el sistema operativo anfitrión. Es un kernel de aplicación que implementa una interfaz similar a Linux, pero a diferencia de Linux está escrito en el lenguaje seguro en memoria Go y se ejecuta en espacio de usuario. gVisor incluye un runtime de Open Container Initiative (OCI) llamado runsc que se integra con Docker y Kubernetes, lo que facilita la ejecución de contenedores aislados. No es un filtro de llamadas al sistema como seccomp-bpf, ni un envoltorio sobre primitivas de aislamiento de Linux como firejail o AppArmor, y no es una VM tradicional. En cambio, gVisor adopta un tercer enfoque: proporciona muchos de los beneficios de seguridad de las VMs manteniendo al mismo tiempo una menor huella de recursos, un arranque rápido y la flexibilidad de las aplicaciones normales de espacio de usuario. Limita la superficie del kernel del anfitrión accesible para la aplicación, al tiempo que le da acceso a las funciones esperadas, implementando efectivamente Linux por medio de Linux. El proyecto se compila en x86_64 y ARM64. Las instrucciones de compilación cubren el uso de un contenedor de compilación envuelto con Bazel, la compilación directa con Bazel, la ejecución de suites de pruebas unitarias y estándar, y las pruebas en macOS. Se mantiene una rama go sintética para la compatibilidad con las herramientas estándar de Go, de modo que los paquetes externos puedan importar subpaquetes de gVisor, como las redes de espacio de usuario a través de Netstack, aunque las compilaciones de runsc desde esa rama no son compatibles. La documentación, las guías de inicio rápido y la arquitectura técnica están disponibles en gvisor.dev. El repositorio también incluye información sobre gobernanza, adoptantes, política de seguridad y contribuciones.