oiyai / docs

Persistent storage

Understand ownership, attachment, expansion, deletion, and charges.

Two ownership modes

BehaviorService-ownedIndependent
Created with a serviceYesOptional
Created without computeNoYes
Retained when compute sleepsYesYes
Retained when service is deletedNoYes
Reusable by another serviceNot as independent storageYes, after detachment and in the original placement

The persistent mount is /workspace. Keep datasets, models, outputs, and checkpoints there. Files in the container's other directories do not have the same persistence contract.

Create and attach

Independent volumes can be provisioned without launching compute. The size range is 10–4,096 GB. Pass volumeId in a service specification to attach a retained independent volume. Its original placement determines compute affinity; selecting Automatic does not move the files.

An independent volume can have one service attachment. Do not assume a shared multi-service filesystem.

Rename and grow

Volume updates require the current revision. Renaming does not move data. Expansion is increase-only; shrinking is not supported. Pause an attached service before expansion. Wait for storage to become ready, then start the service again.

Check requestedSizeGb, state, and error information during expansion. The requested size is not proof that the backing storage has finished growing.

Understand billing state

ready and provisioned are separate fields. A declaration can exist before backing space has been allocated. Storage charges begin only after backing allocation is confirmed. Once provisioned, retained storage remains billable while compute is paused.

Delete carefully

Deleting a service removes a service-owned workspace. An independent volume survives service deletion and must be deleted separately after it is detached. Deleting storage removes its files; maintain your own backup of valuable data.

Storage API · CLI storage commands

On this page