releases.shpreview

FUSE filesystems; mount S3 buckets and remote storage

July 3, 2026VercelView original ↗
1 featureThis release1 featureNew capabilitiesAI-tallied from the release notes

Vercel Sandbox now supports FUSE, letting you mount remote storage and custom filesystems inside a running Sandbox. Use it to attach S3 buckets, network filesystems, or any other FUSE-compatible driver as a regular path.

import { Sandbox } from '@vercel/sandbox';

const sandbox = await Sandbox.create();

// Install Mountpoint for Amazon S3 (official release) and its FUSE dependency.
await sandbox.runCommand({
  sudo: true,
  cmd: 'dnf',
  args: [
    'install',
    '-y',
    'fuse',
    'https://s3.amazonaws.com/mountpoint-s3-release/latest/x86_64/mount-s3.rpm',
  ],
});

const MOUNT_DIR = '/mnt/s3'

await sandbox.runCommand({
  sudo: true, cmd: 'mkdir', args: ['-p', MOUNT_DIR]
});

// Pass aws credentials only to the mount-s3 command.
// Note: this does expose the credentials permanently in the sandbox!
// Use a restricted role only
await sandbox.runCommand({
  sudo: true,
  cmd: 'mount-s3',
  args: [
    process.env.S3_BUCKET_NAME,
    MOUNT_DIR,
    '--allow-other',
  ],
  env: {
    AWS_ACCESS_KEY_ID: process.env.AWS_ACCESS_KEY_ID,
    AWS_SECRET_ACCESS_KEY: process.env.AWS_SECRET_ACCESS_KEY,
    AWS_SESSION_TOKEN: process.env.AWS_SESSION_TOKEN,
    AWS_REGION: process.env.AWS_REGION
  },
});

// List the files in your bucket
await sandbox.runCommand({
  cmd: 'ls',
  args: ['-la', MOUNT_DIR],
  stdout: process.stdout,
});

await sandbox.stop();

This makes it possible to stream large datasets directly from object storage, share state across Sandboxes through a common filesystem, or run tools that expect POSIX paths against remote sources without copying data into the Sandbox first.

Learn more about remote storage mounts in the documentation.

Fetched July 3, 2026

FUSE filesystems; mount S3 buckets and remote storage —… — releases.sh