Skip to main content
A volume is a separate block-storage disk. It has its own lifecycle and charges, and can remain in your project after you delete a VM. Use it for data that needs more space or needs to move between VMs.

Create a volume

Open Volumes in your project and click Create Volume. Choose a name, size, region and filesystem. The accepted size range is 10 GB to 10,240 GB, subject to your organization quota. Use ext4 for Suji’s automatic mounting and filesystem-growth workflow. Although XFS is available as a filesystem choice, the current automation uses ext4-specific mount persistence and expansion. If you choose XFS, manage and verify mounting and growth yourself from the host terminal. Billing starts at creation and continues until deletion, whether the volume is attached or detached and whether its VM is running or stopped. Review the price shown before creating it.

Attach and check the mount

Attach the volume to a VM in the same project and region. A volume attaches to one VM at a time, and a VM can have up to 16 attached volumes. With auto-mount enabled, Suji attempts to mount the disk under /mnt/<volume-name> when attaching it to a running VM. Attachment to a stopped VM does not complete that live mount step. After starting the VM, check the volume’s mount status before using it; mount it if needed. An attachment can succeed while mounting fails. Check the dashboard’s error message and confirm the mount from the host terminal:
With auto-mount off, configure the mount yourself. Renaming the volume’s display name does not automatically move an existing mount directory or update app configuration.

Use the volume with an app

Marketplace apps normally store data in Docker volumes on the system disk. A host mount such as /mnt/media is not automatically visible inside an app container. Moving an app’s data requires a compatible deployment configuration, a data copy, correct ownership and a container mount. The dashboard’s custom Compose editor restricts host bind paths, so do not assume that any /mnt path can be added there. Plan the app’s supported configuration or manage a custom deployment from the host terminal. Stop writes and make a backup before moving data. Verify that the app reads and writes the new location before removing the original copy.

Move or detach

Stop services using the volume before detaching it. For a tracked mount on a running VM, Suji attempts to unmount it first and refuses the detach if that unmount fails, for example because files are still open. If you manage mounts yourself, verify that the disk is no longer in use before detaching it. You can then attach it to another VM in the same project and region. Deleting a VM does not delete its separate volumes; they continue to incur storage charges until deleted or removed under the zero-balance retention policy.

Grow a volume

Volumes can grow but cannot shrink. Request the larger size from the volume’s controls. Device expansion and filesystem expansion are separate steps: Suji attempts automatic filesystem growth for a mounted volume on a running VM, but that step can fail. Afterward, compare lsblk -f and df -h. If the disk is larger but the filesystem is not, use the filesystem’s appropriate expansion procedure. Do not assume a successful size change means the app can already use the extra space.

Backups and deletion

VM snapshots and managed VM backups do not include attached block-storage volumes. Back up their data separately, using an application-aware method where needed. A volume must be detached before deletion. Deletion is permanent and has no recycle bin. Save the data you need and verify the selected volume before confirming. Default quotas are 5 volumes and 500 GB total per organization, shared across its projects. Contact support if you need a higher limit. For current storage charges, see the pricing page.

Next

Snapshots and backups

Understand system-disk coverage and retention.

Resize

Change the VM size or enlarge its system disk.