Persistent disks

Storage that outlives
the deploy.

Attach a volume to your app, mount it like a directory, and forget about it. Disks survive restarts, redeploys, region rebalancing, and the occasional 3 a.m. crash.

Lifecycle

Attach once. Forget forever.

01 / Provision

Declare a volume

Add a few lines to rivet.yml or click "New volume" in the dashboard. NVMe-backed, pinned to a region.

02 / Mount

It's just a directory

Your container sees /data. Write to it like any local filesystem — no SDK, no special client.

03 / Persist

Deploys can't touch it

Push a new build. Restart. Scale to zero. The volume reattaches to the next instance, byte-for-byte.

In code

A volume is three lines.

# rivet.yml
volumes:
  - name: app-data
    size: 20GB
    mount: /data
    region: sfo

$ rivet deploy
→ volume "app-data" attached at /data (20GB · sfo1)
→ live · whoami.onrivet.sh
Features

The boring details, handled.

NVMe under the hood

Locally-attached SSDs in every region. p99 read latency under 200 µs.

Automatic snapshots

Hourly snapshots for the last 24h, daily for the last 30. Restore to any of them with one click.

Grow without downtime

Resize live volumes from 1 GB up to 1 TB. Filesystem expands online — no remount.

Encrypted at rest

AES-256, per-volume keys, rotated quarterly. SOC 2 Type II audit on the way.

Region pinning

Volumes live where you put them. Your app scales to other regions, but the disk stays put.

Fork & clone

Spin up a staging environment with a copy of production data in seconds. Diffs only on write.

Ship your first app today.

Closed beta. Onboarding a few builders each week — most projects are running within an hour of joining.