# Cloud Disk

Tigris Cloud Disk presents a Tigris bucket as a Linux block device. You format it with any filesystem (ext4, XFS, btrfs) and run any application on it, databases included. Capacity is effectively unlimited, you pay only for the data you store, and the volume inherits the durability, replication, and access controls of the bucket underneath.

Beta

Cloud Disk is in beta and under active development.

Everything that defines a disk — its geometry, its settings, its contents — lives in the bucket. The disk you unmount on one machine is the disk you mount on the next, including on another machine or in another region.

To work with disks, install the CLI below. The [Architecture](/docs/cloud-disk/architecture/.md) page covers how it works, and [Kubernetes (CSI)](/docs/cloud-disk/kubernetes/.md) covers provisioning disks as PersistentVolumes.

## Install[​](#install "Direct link to Install")

Auto-detects CPU arch and package manager (Linux, amd64/arm64):

```
curl -fsSL https://cloud-disk.t3.tigrisfiles.io/install.sh | sh
```

## Quick start[​](#quick-start "Direct link to Quick start")

One command creates the disk, formats it, and mounts it at `/mnt/cloud-disk/<name>`. Get your access keys from the [Tigris console](https://console.storage.dev). Credentials are remembered, so it's the only time they're needed:

```
export AWS_ACCESS_KEY_ID=tid_... AWS_SECRET_ACCESS_KEY=tsec_...

sudo -E cloud-disk create mydata -size 100G
```

From then on:

```
sudo cloud-disk umount mydata     # flushes everything to Tigris, unmounts

sudo cloud-disk mount mydata      # mount again — here or on another machine
```

On a new machine, export the credentials for the first command; after that they're remembered there as well.

## Snapshots & forks[​](#snapshots--forks "Direct link to Snapshots & forks")

You can snapshot a disk while it's mounted and in use, then fork the snapshot into an independent copy. Everything is uploaded to Tigris before the snapshot is taken:

```
cloud-disk snapshot mydata create --name nightly    # prints the snapshot version

cloud-disk create mydata-test --parent mydata --snapshot <version> \

    --set mount-point=/mnt/cloud-disk/mydata-test
```

The fork starts with the parent's data and settings at that snapshot; the two disks are fully independent afterwards.

## Settings[​](#settings "Direct link to Settings")

Settings are stored with the disk — set once, they apply wherever it's mounted:

```
cloud-disk config mydata set max-cache-size=8G flush-workers=16

cloud-disk config mydata show
```

See [Configuration & Tuning](/docs/cloud-disk/tuning/.md) for the settings worth knowing.

## Status[​](#status "Direct link to Status")

```
cloud-disk status mydata
```

## Delete[​](#delete "Direct link to Delete")

Deletes the disk and all its data, after asking for confirmation:

```
cloud-disk delete mydata
```

## Next steps[​](#next-steps "Direct link to Next steps")

* [Architecture](/docs/cloud-disk/architecture/.md) — how a bucket becomes a block device, and the durability trade-offs behind write-through and write-back.
* [Kubernetes (CSI)](/docs/cloud-disk/kubernetes/.md) — provision disks as PersistentVolumes.
* [Configuration & Tuning](/docs/cloud-disk/tuning/.md) — the settings worth knowing and when to change them.
