Приложение для HarmonyOS, которое запускает полноценную arm64-среду Linux с оболочкой Alpine на телефонах, планшетах и устройствах 2-в-1/ПК.
leaningtech/webvm
Виртуальная машина Linux, работающая прямо в браузере и выполняющая код x86 через WebAssembly с помощью CheerpX.
- Звёзды
- 17,441
- Форки
- 3,339
- Открытые issues
- 12
- Последний коммит
- 14 дней назад
Что это?
WebVM — это бессерверная виртуальная среда Linux, которая целиком работает на стороне клиента в HTML5 и WebAssembly. Она совместима с Linux ABI и запускает неизменённый дистрибутив Debian, включая множество нативных наборов инструментов для разработки, прямо во вкладке браузера.
В основе виртуальной машины лежит движок CheerpX: он включает JIT-компилятор x86 в WebAssembly, виртуальную файловую систему на блочных устройствах, эмулятор системных вызовов Linux и изолированное выполнение на стороне клиента. Для терминала веб-интерфейс использует xterm.js.
В репозитории находится исходный код webvm.io. Проект можно форкнуть и развернуть на GitHub Pages или собрать собственные образы дисков ext2 на основе Dockerfile. Также доступна интеграция с Tailscale, в том числе с узлами выхода и собственными управляющими серверами Headscale, а ещё панель интеграции с Claude AI.
Ключевые возможности
- 01Запускает неизменённый дистрибутив Debian в браузере, транслируя код x86 в WebAssembly.
- 02Предоставляет виртуальную файловую систему на блочных устройствах и эмулирует системные вызовы Linux.
- 03Поддерживает работу в сети через Tailscale, включая узлы выхода и Headscale.
- 04Позволяет собирать собственные образы дисков ext2 из Dockerfile и развёртывать их на GitHub Pages.
- 05Включает панель интеграции с Claude AI, которая хранит API-ключ локально в браузере.
Сценарии использования
- Попробовать оболочку Linux или набор инструментов для разработки без локальной установки.
- Создать браузерную REPL, например среду Python, на основе собственного Dockerfile.
- Разместить интерактивную демонстрацию Linux или учебную среду на статическом сайте.
- Экспериментировать с заданиями CTF в изолированной песочнице.
Быстрый старт
- 1
Клонируйте репозиторий
git clone https://github.com/leaningtech/webvm.git - 2
Установите зависимости
npm install - 3
Соберите проект
npm run build - 4
Запустите Nginx и откройте WebVM по адресу http://127.0.0.1:8081 (после размещения образа диска в custom-disk-images/)
nginx -p . -c nginx.conf
Что важно знать
- Публичное развертывание CheerpX бесплатно только для частных лиц и ознакомительного использования; организациям требуется коммерческая лицензия.
- Некоторые низкоуровневые сетевые функции, например ICMP ping, недоступны внутри VM.
- По умолчанию пользователи имеют права root, а sudo не установлен.
Темы
Частые вопросы
- Что такое webvm?
- Виртуальная машина Linux, работающая прямо в браузере и выполняющая код x86 через WebAssembly с помощью CheerpX. WebVM — это бессерверная виртуальная среда Linux, которая целиком работает на стороне клиента в HTML5 и WebAssembly. Она совместима с Linux ABI и запускает неизменённый дистрибутив Debian, включая множество нативных наборов инструментов для разработки, прямо во вкладке браузера.
- webvm можно использовать бесплатно? Какая у него лицензия?
- webvm распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- webvm всё ещё поддерживается?
- Активно поддерживается. Последний коммит в webvm — 7 окт. 2026 г..
- Для чего можно использовать webvm?
- Попробовать оболочку Linux или набор инструментов для разработки без локальной установки. Создать браузерную REPL, например среду Python, на основе собственного Dockerfile. Разместить интерактивную демонстрацию Linux или учебную среду на статическом сайте. Экспериментировать с заданиями CTF в изолированной песочнице.
- Как установить webvm?
- Клонируйте репозиторий: git clone https://github.com/leaningtech/webvm.git Установите зависимости: npm install Соберите проект: npm run build Запустите Nginx и откройте WebVM по адресу http://127.0.0.1:8081 (после размещения образа диска в custom-disk-images/): nginx -p . -c nginx.conf
- Где скачать webvm?
- Исходный код и инструкции по установке — на GitHub: https://github.com/leaningtech/webvm
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Warp — среда разработки с агентами на базе терминала, встроенным coding agent и поддержкой собственных CLI-агентов.
Termux — терминальное приложение и Linux-среда для Android, позволяющие запускать shell и устанавливать пакеты прямо на телефоне.
Быстрый, нативный и функциональный эмулятор терминала с GPU-рендерингом и интерфейсами для каждой платформы, а также библиотекой libghostty для встраивания терминалов.
Кроссплатформенный терминал с открытым исходным кодом и интеграцией AI для macOS, Linux и Windows: BYOK, локальные модели, постоянные SSH-сессии и встроенный просмотр файлов.
Терминальный интерфейс для Linux, который показывает занятые сетевые порты и позволяет просматривать или завершать процессы, использующие их.