Skip to content
This repository was archived by the owner on Apr 13, 2026. It is now read-only.

Latest commit

 

History

History
156 lines (111 loc) · 5.59 KB

File metadata and controls

156 lines (111 loc) · 5.59 KB

Ravel

Run containers as microVMs. Fast, secure, simple.

What is Ravel?

Ravel is an open-source orchestrator that turns OCI images inside lightweight microVMs powered by Cloud Hypervisor. Get the sandboxing of VMs with the simplicity of containers.

# Deploy nginx in a microVM
curl -X POST 'http://localhost:3000/fleets/my-fleet/machines?namespace=default' \
  -H 'Content-Type: application/json' \
  -d '{"region": "eu-west", "config": {"image": "nginx:alpine", "guest": {"cpus": 1, "memory_mb": 512}}}'

Table of Contents

Features

  • MicroVM Runtime - Run any OCI/Docker image inside isolated Cloud Hypervisor VMs
  • HTTP Gateway - Automatic HTTPS routing with Let's Encrypt support
  • TCP/UDP Proxy - Load-balanced proxy for any protocol
  • Private Networks - WireGuard-based networking between machines
  • Volumes & Secrets - Persistent storage and secure secret management
  • Clustering - Multi-node clusters with gossip-based state sync

Quick Start

# 1. Create a namespace
curl -X POST 'http://localhost:3000/namespaces' \
  -H 'Content-Type: application/json' -d '{"name": "default"}'

# 2. Create a fleet
curl -X POST 'http://localhost:3000/fleets?namespace=default' \
  -H 'Content-Type: application/json' -d '{"name": "web"}'

# 3. Deploy a machine
curl -X POST 'http://localhost:3000/fleets/web/machines?namespace=default' \
  -H 'Content-Type: application/json' \
  -d '{"region": "eu-west", "config": {"image": "nginx:alpine", "guest": {"cpu_kind": "std", "cpus": 1, "memory_mb": 512}}}'

# 4. Create a gateway to expose it
curl -X POST 'http://localhost:3000/fleets/web/gateways?namespace=default' \
  -H 'Content-Type: application/json' -d '{"name": "www", "target_port": 80}'

Your app is now live at https://www.yourdomain.com

Examples

Example Description
hello-world Simple Alpine container
nginx Nginx web server with gateway
frankenphp Modern PHP application server

See the examples directory for more.

Architecture

┌─────────────┐     ┌─────────────┐
│   Client    │────▶│   Ravel     │
└─────────────┘     └─────────────┘
                           │
                           ▼
                    ┌─────────────┐
                    │   MicroVM   │
                    │ (Container) │
                    └─────────────┘

Components:

  • Cloud Hypervisor - Lightweight VMM for microVMs
  • Containerd - OCI image management
  • NATS - Pub/sub messaging

Documentation

FAQ

Is it production-ready?

Not yet, Ravel is in beta and is to be considered unstable.

But we are working full time on providing a stable release.

Why is it named Ravel?

Ravel is named after the famous composer Maurice Ravel, known for his orchestral works.

How do I contribute?

Please come and join us on our Discord server, where you can ask questions, get help, and contribute to the project.

How do I report a bug?

Please open an issue on our GitHub repository.

How do I request a feature?

Please open an issue on our GitHub repository.

License

Copyright 2026 Alexis Bouchez

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with this program. If not, see https://www.gnu.org/licenses/.

Portions of this project (pkg/vsock/) are derived from the Firecracker project, © Amazon.com, Inc., and remain under the Apache License 2.0 — see the file headers for details.

Star History

Thank you for your support! 🌟

Star History Chart