Repolode
losfair

losfair/bake

CLI для Linux, который встраивает Firecracker microVM (бинарный файл, ядро, initrd и rootfs) в один исполняемый файл, запускающий контейнер внутри виртуальной машины.

Звёзды
483
Форки
19
Открытые issues
1
Последний коммит
9 месяцев назад

Что это?

bake упаковывает Firecracker microVM, включая бинарный файл firecracker, ядро, initrd и образ корневой файловой системы, в автономный исполняемый файл ELF. Запуск этого файла загружает microVM и запускает в ней точку входа контейнера, поэтому результат можно распространять и запускать как обычный бинарный файл.

Инструмент также обеспечивает связь между хостом и гостевой системой без прав root. Сетевой трафик проходит через vsock с помощью SOCKS5-прокси и UDP-моста; для исходящих IPv4-адресов можно задать список разрешённых. Каталоги можно подключать к виртуальной машине по 9p, а TCP-порты хоста — перенаправлять в гостевую систему с помощью -p. Для сетевого подключения гостевой системы можно передать конфигурацию WireGuard.

В собранный бинарный файл также входит подкоманда ssh для подключения к запущенному экземпляру и подкоманда systemd, выводящая файл юнита. Перед запуском виртуальной машины необязательный init-скрипт может выполнить предварительные проверки.

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

  • 01Встраивает firecracker, ядро, initrd и rootfs в один исполняемый файл.
  • 02Работает без прав root; сетевое взаимодействие в пространстве пользователя проходит через vsock.
  • 03Ограничивает исходящий трафик с помощью списка разрешённых IPv4-адресов и CIDR-подсетей.
  • 04Подключает каталоги хоста к виртуальной машине по 9p и перенаправляет TCP-порты хоста.
  • 05Подключается к запущенным экземплярам с помощью встроенной подкоманды ssh.

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

  • Распространение контейнеризированного приложения в виде одного бинарного файла, запускающегося в изолированной microVM.
  • Запуск недоверенных нагрузок или нагрузок в песочнице на Linux-хостах без прав root.
  • Упаковка сервиса с туннелем WireGuard для контролируемого доступа к сети.

Темы

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

Что такое bake?
CLI для Linux, который встраивает Firecracker microVM (бинарный файл, ядро, initrd и rootfs) в один исполняемый файл, запускающий контейнер внутри виртуальной машины. bake упаковывает Firecracker microVM, включая бинарный файл firecracker, ядро, initrd и образ корневой файловой системы, в автономный исполняемый файл ELF. Запуск этого файла загружает microVM и запускает в ней точку входа контейнера, поэтому результат можно распространять и запускать как обычный бинарный файл.
bake можно использовать бесплатно? Какая у него лицензия?
bake распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
bake всё ещё поддерживается?
Нет коммитов больше 6 месяцев. Последний коммит в bake — 2 февр. 2026 г..
Для чего можно использовать bake?
Распространение контейнеризированного приложения в виде одного бинарного файла, запускающегося в изолированной microVM. Запуск недоверенных нагрузок или нагрузок в песочнице на Linux-хостах без прав root. Упаковка сервиса с туннелем WireGuard для контролируемого доступа к сети.
Где скачать bake?
Исходный код и инструкции по установке — на GitHub: https://github.com/losfair/bake

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

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