Repolode
google

google/gvisor

Прикладное ядро на Go, которое изолирует контейнеры, перехватывая системные вызовы Linux в пространстве пользователя; запускается как OCI runtime runsc.

Звёзды
19,738
Форки
2,025
Открытые issues
1,005
Последний коммит
4 часа назад

Что это?

gVisor — это прикладное ядро, реализующее интерфейс, похожий на Linux, и расположенное между контейнеризованными приложениями и хостовой операционной системой. Поскольку оно работает в пространстве пользователя и написано на безопасном для памяти языке (Go), контейнер получает доступ лишь к ограниченной части ядра хоста, что снижает последствия уязвимостей, позволяющих выйти из контейнера.

gVisor поставляется с OCI runtime runsc, который интегрируется с Docker и Kubernetes. Благодаря этому существующие инструменты для работы с контейнерами могут запускать изолированные контейнеры с минимальными изменениями. gVisor работает как обычный процесс на хосте, а не как виртуальная машина; проект занимает промежуточное положение между фильтрацией системных вызовов, например с помощью seccomp-bpf, и полноценными виртуальными машинами.

Репозиторий собирается на хостах x86_64 и ARM64 с Linux 5.6 или новее; для сборки используется Bazel, запущенный в контейнере. Также доступна совместимая с Go ветка, из которой можно импортировать пакеты, например TCP/IP-стек Netstack, в другие проекты на Go.

Ключевые возможности

  • 01Реализует в пространстве пользователя интерфейс системных вызовов, похожий на Linux
  • 02Поставляется с OCI runtime runsc для Docker и Kubernetes
  • 03Написан на Go — языке с безопасным управлением памятью
  • 04Работает как обычный процесс на хосте, без полноценной виртуальной машины
  • 05Собирается для x86_64 и ARM64

Сценарии использования

  • Запуск недоверенного или стороннего кода в изолированных контейнерах
  • Дополнительная изоляция многопользовательских нагрузок Kubernetes
  • Импорт TCP/IP-стека Netstack, работающего в пространстве пользователя, в проекты на Go

Быстрый старт

  1. 1

    Проверьте требования: Linux 5.6 или новее и Docker 17.09.0 или новее

  2. 2

    Соберите релизный tarball, содержащий runsc

    make release-tarball DESTINATION=bin/
  3. 3

    Распакуйте tarball в /usr/local/bin

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

Что важно знать

  • Работает только в Linux 5.6 или новее и собирается только для x86_64 и ARM64.
  • Для сборки из исходного кода требуется контейнер сборки на базе Docker или вручную настроенная цепочка инструментов Bazel.
  • Сборка runsc из ветки go не поддерживается.

Темы

Частые вопросы

Что такое gvisor?
Прикладное ядро на Go, которое изолирует контейнеры, перехватывая системные вызовы Linux в пространстве пользователя; запускается как OCI runtime runsc. gVisor — это прикладное ядро, реализующее интерфейс, похожий на Linux, и расположенное между контейнеризованными приложениями и хостовой операционной системой. Поскольку оно работает в пространстве пользователя и написано на безопасном для памяти языке (Go), контейнер получает доступ лишь к ограниченной части ядра хоста, что снижает последствия уязвимостей, позволяющих выйти из контейнера.
gvisor можно использовать бесплатно? Какая у него лицензия?
gvisor распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
gvisor всё ещё поддерживается?
Активно поддерживается. Последний коммит в gvisor — 22 окт. 2026 г..
Для чего можно использовать gvisor?
Запуск недоверенного или стороннего кода в изолированных контейнерах Дополнительная изоляция многопользовательских нагрузок Kubernetes Импорт TCP/IP-стека Netstack, работающего в пространстве пользователя, в проекты на Go
Как установить gvisor?
Проверьте требования: Linux 5.6 или новее и Docker 17.09.0 или новее Соберите релизный tarball, содержащий runsc: make release-tarball DESTINATION=bin/ Распакуйте tarball в /usr/local/bin: sudo tar -C /usr/local/bin -xf bin/gvisor.tar.bz2
Где скачать gvisor?
Исходный код и инструкции по установке — на GitHub: https://github.com/google/gvisor

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

Trivy — сканер безопасности с открытым исходным кодом, который выявляет уязвимости, ошибки конфигурации, секреты и данные SBOM в контейнерах, файловых системах, Git-репозиториях, образах VM и Kubernetes.

38,5 тыс.774GoApache-2.0Обновлён 3 дня назад