Out Plane

Persistent Volumes

Attach a persistent volume to an app so uploads, files, or a self hosted database survive restarts and redeploys, and plan for its fixed size.

A volume is persistent block storage you attach to an application. Its data survives restarts and redeploys, which makes it the place for databases you self host, queues, or uploaded files.

An application with a volume runs a single instance, and a volume's size is fixed when you create it. Plan for both before you attach one.

How Volumes Work

A volume holds one set of files, and only one copy of your application writes to it. Two copies writing the same files, such as a database's data directory, would corrupt them, so an application with a volume attached runs a single instance. To attach a volume to an application that runs more than one instance, scale it to one first. The size you choose at creation cannot be changed later, so pick a size with room to grow.

Create and Attach

You can attach a volume while creating an application, or create one on its own and attach it afterward.

Create the Volume

Give it a name and a size in whole GB.

Attach It

Choose the application and a mount path, such as /data. The path must start with / and be unique within the app. The volume and app must be in the same team.

Deploy

The volume is mounted on the application's next deployment.

Reference

RuleValue
Size10 to 50 GB, whole numbers, fixed after creation
Mount pathStarts with /, up to 255 characters, unique per app
InstancesOne. An application with a volume runs a single instance
Team storageA total across all volumes, set by your plan
Name1 to 100 characters, letters, numbers, hyphens, and underscores

To change a mount path, detach the volume and attach it again at the new path. A volume that is attached cannot be deleted until you detach it.

On this page