Orva provides a self-hosted function runtime designed for homelabs or single on-premises servers.
It allows you to deploy JavaScript, TypeScript, and Python functions.
Functions are executed within an nsjail sandbox, with five kernel-enforced boundaries per call to isolate them from the host.
Experience fast cold starts (50-500 ms) and warm hits (2-15 ms) with minimal memory usage (~18 MB).
Key Features:
No Control Plane: No external database or telemetry required.
State Management: State is managed via a single SQLite file and a directory of function versions.
Built-in Tools: Includes a dashboard, CLI, MCP server, and an AI assistant for instance operation.
Simplified Development: Write handlers without needing to learn complex new concepts.
Runtimes: Supports latest-stable Node.js and Python. TypeScript is supported via build-time compilation to JavaScript.
Integrated SDK: Provides built-in capabilities for Storage, function-to-function calls, background jobs, and schedules.
Isolation: Features five layers of kernel-enforced isolation: User namespace, Read-only root, Private filesystem, cgroup v2 limits, and seccomp allowlist.
Network Control: Network access is off by default, with options for egress traffic through a userspace network stack.
Operate: Offers features like KV store, function-to-function calls, streaming responses, background jobs, cron schedules, webhooks, tracing, invocation logs, activity feed, deployments with rollback, warm pools, egress control, API keys, MCP server, and an AI assistant.
What it is Not: Not multi-tenant, not a defense against kernel zero-days, not a managed platform, and not a horizontal cluster.
Installation: Easily install via Docker Compose, Docker, bare metal script, or CLI-only installation.
Open Source: Licensed under Apache 2.0, with the runtime, dashboard, CLI, and MCP server in a single repository.