Volumes
Persistent disks for your services, growing them, deleting them and backups.
A volume keeps files across restarts and deploys. Every template that stores data comes with its own volume; you can add one to an app service too.
Add a volume
Open the service's Storage, enter the Mount path where the volume appears in the container, and choose Add volume. Deploy to start using it.
- One volume per service.
- An absolute path, up to 8 levels deep, like
/dataor/app/uploads. - Not a system path:
/proc,/sys,/dev,/etc,/bin,/sbin,/lib…,/usr,/boot,/root,/run,/var/runor/tmp. - Not on a scheduled job.
Its starting and largest size depend on your plan; see pricing.
One replica, a short pause on deploy
A volume is used by one replica at a time. A service with a volume runs one replica, and each deploy stops the old replica before the new one starts.
Grow a volume
Grow volume makes it larger, in steps of 512 MiB, while the service keeps running. A volume cannot shrink.
Delete a volume
Delete volume takes it out of the service's settings at once; the next deploy runs without it. Its data is kept for 48 hours and can be restored from its card during that time; after that it is deleted for good.
Backups
On paid plans, volumes are backed up:
| Backup | When (Riyadh time) | Kept |
|---|---|---|
| Daily | 04:00 | the last 7 |
| Weekly | Sundays at 04:30 | the last 4 |
A backup copies the whole volume at one moment, like a sudden power cut would leave it. Databases recover from that state the way they recover after a crash. To restore a backup, contact support.
On the free plan, volumes are not backed up, and the service panel says This volume has no backups.
For a database, also keep your own dumps (pg_dump, mysqldump, mongodump) on a schedule, with a
scheduled job, stored outside Raseef.