Skip to main content

Overview

Stormkit’s Volumes feature allows you to maintain persistent files across deployments. This feature is perfect for applications that need to store and manage persistent data such as:
  • Configuration files
  • User-uploaded content
  • Media assets
  • Cache files
  • Any files that need to persist between updates
Persistent volumes configuration

Enabling Volumes (Self-Hosted)

This step is necessary only for self-hosted users. Cloud-hosted Stormkit users have volumes pre-configured.
To start using Volumes:
1

Navigate to Volumes

Go to your application’s environment and click on the Volumes tab in the navigation bar
2

Configure storage

Click on Configure to set up your volume storage
3

Set root path

Configure the root path where files will be stored (default: /shared/volumes)
You will need Admin rights in order to configure the volumes configuration.

Configuration

Currently Stormkit supports file systems as persistent volumes. If you have a specific request (such as AWS S3, Alibaba OSS, Hetzner OSS or other storages), please create a feature request.

File System

  • Root path: The base path where your files will be stored (default: /shared/volumes)
These settings will apply to all applications across your instance.

Managing Files

File explorer interface

Uploading Files

Upload Files

Click Upload file button to upload individual files to your volume.

Upload Folders

Click Upload folders button. The folder structure is maintained during upload.

File Operations

For each file in your volume, you can:
  • Change visibility - Toggle between public and private
  • Download - Download the file to your local machine
  • Delete - Remove the file from the volume

Making Files Public

By default, all uploaded files in your volume are private files. To make them public:
1

Open file menu

Click the three dots menu (…) next to the file
2

Make public

Select Make public from the menu
3

Confirm

Confirm your choice in the dialog
4

Get URL

Once public, you’ll receive a URL to access the file
Public files can be accessed by anyone with the URL. Private files require authentication to access.

Accessing Files (Self-Hosted, File System)

Self-hosted users using a File System volume can access files directly from the file system. The folder structure is as follows:

Example: Accessing from Code

Use Cases

User Uploads

Store user-generated content like profile pictures, documents, or media files that persist across deployments.

Configuration

Maintain configuration files that can be updated without redeployment.

Static Assets

Store static assets that are too large to include in your repository.

Cache Storage

Persist cache files between deployments for improved performance.

Best Practices

  • Regular backups - The Volumes feature is currently in beta. It’s recommended to regularly backup important data
  • Monitor storage usage - Keep track of your storage consumption
  • Use appropriate visibility - Only make files public if they truly need to be publicly accessible
  • Organize with folders - Use folder structures to keep files organized
  • Clean up unused files - Regularly remove files that are no longer needed

Limitations

The Volumes feature is currently in beta.
  • File system storage only (cloud storage coming soon)
  • Storage limits may apply depending on your plan
  • Public URLs are permanent - changing a file to private won’t invalidate the URL immediately

Security Considerations

  • Private by default - All files are private unless explicitly made public
  • Access control - Only team members with appropriate permissions can manage volumes
  • Isolated storage - Each environment has its own isolated storage space
  • Secure URLs - Public file URLs are served over HTTPS

Troubleshooting

  • Verify you have Admin rights for the environment
  • Check storage quota limits
  • Ensure file names don’t contain special characters
  • Try uploading smaller files first
  • Verify the file path is correct
  • Check the folder structure: a<app-id>e<env-id>
  • Ensure the application has read permissions
  • Verify the volume is properly configured
  • Wait a few minutes for the change to propagate
  • Clear browser cache
  • Verify the file is marked as public
  • Check if the file still exists in the volume