Repolode
google

google/gvisor

Um kernel de aplicação escrito em Go que isola containers interceptando chamadas de sistema Linux no userspace e pode ser executado como runtime OCI runsc.

Estrelas
19,738
Forks
2,025
Issues abertas
1,005
Último commit
há 3 horas

O que é?

O gVisor é um kernel de aplicação que implementa uma interface semelhante à do Linux e fica entre aplicações em containers e o sistema operacional host. Como é executado no userspace e escrito em uma linguagem segura para a memória (Go), limita o acesso do container ao kernel host, reduzindo o impacto de vulnerabilidades que permitem escapar do container.

O gVisor inclui um runtime OCI chamado runsc, integrado ao Docker e ao Kubernetes, para que as ferramentas de containers existentes executem containers isolados com poucas mudanças. Ele roda como um processo normal no host, em vez de uma máquina virtual, e o projeto se posiciona como uma solução intermediária entre a filtragem de chamadas de sistema, como seccomp-bpf, e o uso de VMs completas.

O repositório compila em hosts x86_64 e ARM64 com Linux 5.6 ou mais recente, usando Bazel dentro de um container de build. Também oferece uma branch compatível com Go para importar pacotes, como a pilha TCP/IP Netstack, em outros projetos Go.

Recursos principais

  • 01Implementa uma interface de chamadas de sistema semelhante à do Linux no userspace
  • 02Inclui o runtime OCI runsc para Docker e Kubernetes
  • 03Escrito em Go, uma linguagem segura para a memória
  • 04Roda como um processo normal no host, sem uma máquina virtual completa
  • 05Compila em x86_64 e ARM64

Casos de uso

  • Executar código não confiável ou de terceiros em containers isolados
  • Adicionar uma camada extra de isolamento a workloads multi-tenant no Kubernetes
  • Importar a pilha TCP/IP Netstack em userspace para projetos Go

Início rápido

  1. 1

    Verifique os requisitos: Linux 5.6 ou posterior e Docker 17.09.0 ou posterior

  2. 2

    Compile o tarball de lançamento que contém runsc

    make release-tarball DESTINATION=bin/
  3. 3

    Extraia o tarball para /usr/local/bin

    sudo tar -C /usr/local/bin -xf bin/gvisor.tar.bz2

Antes de usar

  • Executa apenas no Linux 5.6 ou posterior e só pode ser compilado para x86_64 e ARM64.
  • A compilação a partir do código-fonte requer um contêiner de build baseado em Docker ou uma toolchain do Bazel configurada manualmente.
  • O runsc não oferece suporte a builds a partir da branch go.

Tópicos

Perguntas frequentes

O que é gvisor?
Um kernel de aplicação escrito em Go que isola containers interceptando chamadas de sistema Linux no userspace e pode ser executado como runtime OCI runsc. O gVisor é um kernel de aplicação que implementa uma interface semelhante à do Linux e fica entre aplicações em containers e o sistema operacional host. Como é executado no userspace e escrito em uma linguagem segura para a memória (Go), limita o acesso do container ao kernel host, reduzindo o impacto de vulnerabilidades que permitem escapar do container.
gvisor é gratuito? Qual é a licença?
gvisor é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
gvisor ainda é mantido?
Manutenção ativa. O último commit de gvisor foi em 22 de out. de 2026.
Para que posso usar gvisor?
Executar código não confiável ou de terceiros em containers isolados Adicionar uma camada extra de isolamento a workloads multi-tenant no Kubernetes Importar a pilha TCP/IP Netstack em userspace para projetos Go
Como instalar gvisor?
Verifique os requisitos: Linux 5.6 ou posterior e Docker 17.09.0 ou posterior Compile o tarball de lançamento que contém runsc: make release-tarball DESTINATION=bin/ Extraia o tarball para /usr/local/bin: sudo tar -C /usr/local/bin -xf bin/gvisor.tar.bz2
Onde consigo gvisor?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/google/gvisor

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados