Среда выполнения JavaScript, TypeScript и WebAssembly с безопасными настройками по умолчанию, построенная на V8, Rust и Tokio.
cloudflare/workerd
Серверный рантайм для JavaScript и Wasm на базе того же кода, что и Cloudflare Workers, — для самостоятельного хостинга и локальной разработки.
- Звёзды
- 9,036
- Форки
- 796
- Открытые issues
- 813
- Последний коммит
- 4 часа назад
Что это?
workerd — серверный рантайм для JavaScript и WebAssembly-кода, написанного для Cloudflare Workers. Его можно использовать как сервер приложений для самостоятельного хостинга приложений Workers, как инструмент локальной разработки и тестирования или как программируемый прямой либо обратный HTTP-прокси, который перехватывает, изменяет и маршрутизирует запросы.
Приложения разделяются на наносервисы, которые взаимодействуют друг с другом в одном потоке и процессе, а ресурсы связываются через capability bindings в конфигурационном файле Cap'n Proto, а не через глобальные пространства имён. Встроенные API соответствуют стандартам веб-платформы, например fetch(), а для каждой версии указывается дата совместимости, позволяющая эмулировать поведение старых API.
Проект написан на C++ и собирается с помощью Bazel; предварительно собранные бинарные файлы распространяются через npm. Он тестируется на Linux, macOS и Windows и работает с Wrangler через переменную окружения MINIFLARE_WORKERD_PATH. В проекте отмечают, что это не защищённая песочница, поэтому недоверенный код следует запускать в VM или в аналогичной изолированной среде.
Ключевые возможности
- 01Запускает JavaScript- и Wasm-код, написанный для Cloudflare Workers.
- 02Разделяет приложения на наносервисы, взаимодействующие друг с другом в одном процессе.
- 03Настраивается с помощью файла Cap'n Proto и capability bindings.
- 04Поддерживает даты совместимости для эмуляции прежнего поведения API.
- 05Может работать как программируемый прямой или обратный HTTP-прокси.
- 06Поддерживает наследование сокетов systemd через --socket-fd.
Сценарии использования
- Самостоятельный хостинг приложений, изначально предназначенных для Cloudflare Workers.
- Локальная разработка и тестирование кода Workers с Wrangler.
- Создание программируемого HTTP-прокси для изменения запросов или их маршрутизации.
Быстрый старт
- 1
Соберите бинарный файл workerd с помощью Bazel
bazel build //src/workerd/server:workerd - 2
Создайте файл конфигурации (например, my-config.capnp), в котором указаны ваши сервисы и сокеты
- 3
Запустите сервисы с этой конфигурацией с помощью workerd
workerd serve my-config.capnp
Что важно знать
- workerd не является усиленной песочницей, поэтому запускайте недоверенный код в виртуальной машине или другой защищённой песочнице.
- Для сборки из исходного кода требуется большой набор инструментов: например, clang 22 или новее, libc++ 22 или новее и LLD 22 или новее в Linux либо Xcode 16.3 в macOS.
- Официальное тестирование проводилось только на Linux, macOS и Windows для x86-64 и arm64.
Темы
Частые вопросы
- Что такое workerd?
- Серверный рантайм для JavaScript и Wasm на базе того же кода, что и Cloudflare Workers, — для самостоятельного хостинга и локальной разработки. workerd — серверный рантайм для JavaScript и WebAssembly-кода, написанного для Cloudflare Workers. Его можно использовать как сервер приложений для самостоятельного хостинга приложений Workers, как инструмент локальной разработки и тестирования или как программируемый прямой либо обратный HTTP-прокси, который перехватывает, изменяет и маршрутизирует запросы.
- workerd можно использовать бесплатно? Какая у него лицензия?
- workerd распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- workerd всё ещё поддерживается?
- Активно поддерживается. Последний коммит в workerd — 21 окт. 2026 г..
- Для чего можно использовать workerd?
- Самостоятельный хостинг приложений, изначально предназначенных для Cloudflare Workers. Локальная разработка и тестирование кода Workers с Wrangler. Создание программируемого HTTP-прокси для изменения запросов или их маршрутизации.
- Как установить workerd?
- Соберите бинарный файл workerd с помощью Bazel: bazel build //src/workerd/server:workerd Создайте файл конфигурации (например, my-config.capnp), в котором указаны ваши сервисы и сокеты Запустите сервисы с этой конфигурацией с помощью workerd: workerd serve my-config.capnp
- Где скачать workerd?
- Исходный код и инструкции по установке — на GitHub: https://github.com/cloudflare/workerd
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Платформа, совместимая с Cloudflare Workers, для самостоятельного хостинга: один бинарный файл Rust запускает Workers, KV, D1, R2 и другие сервисы на одной машине.
Node.js — кроссплатформенная среда выполнения JavaScript с открытым исходным кодом для запуска JavaScript вне браузера.
Быстрый универсальный инструментарий для JavaScript и TypeScript: runtime, bundler, тестовый раннер и пакетный менеджер в одном исполняемом файле.
Самостоятельно размещаемый почтовый сервис на Cloudflare Workers: создавайте несколько ящиков на одном домене, отправляйте письма и вложения через адаптивный веб-интерфейс.
TypeScript SDK для создания постоянных ИИ-агентов с сохранением состояния на Cloudflare Durable Objects, синхронизацией в реальном времени, планировщиком задач и поддержкой MCP.