---
myst:
html_meta:
"description lang=en": "Create Custom Storage Providers in Kasm Workspaces."
"keywords": "Storage Mapping, Storage Providers, Custom, Docker Volumes, Volume Drivers, Volume Driver Options"
"property=og:locale": "en_US"
---
```{title} Custom Storage Provider Setup
```
## Custom Storage Provider Setup
Custom storage providers give administrators the ability to create free-form configurations that create docker volumes
and then map them into containers.
Configuration is largely instrumented through the **Volume Config** and **Mount Config** options in accordance with any
desired docker volume plugin and driver options.
Unlike the other providers, Storage Mappings for Custom Storage Providers may only be configured by administrators. No
settings are exposed on the Storage Mappings for Custom Storage Providers, so they only service as an association by the admin
to a Workspace, Group, or User.
Example
```{eval-rst}
+-------------------------------+--------------------------------------------------------------------------------------------------------------------+
| Name | :code:`Custom Provider` |
+-------------------------------+--------------------------------------------------------------------------------------------------------------------+
| Storage Provider Type | :code:`Customer` |
+-------------------------------+--------------------------------------------------------------------------------------------------------------------+
| Enabled | :code:`checked` |
+-------------------------------+--------------------------------------------------------------------------------------------------------------------+
| Default Target | :code:`/custom` |
+-------------------------------+--------------------------------------------------------------------------------------------------------------------+
| Volume Config | .. code-block:: json |
| (S3 Example) | |
| | { |
| | "driver" : "rclone", |
| | "driver_opts" : { |
| | "type" : "s3", |
| | "path" : "bucket-name", |
| | "s3-provider" : "AWS", |
| | "s3-env-auth" : "false", |
| | "s3-access-key-id": "--redacted--", |
| | "s3-secret-access-key": "--redacted--", |
| | "s3-region" : "us-east-1", |
| | "uid" : "1000", |
| | "gid" : "1000", |
| | "allow_other" : "true" |
| | } |
| | } |
+-------------------------------+--------------------------------------------------------------------------------------------------------------------+
| Mount Config | :code:`{}` |
+-------------------------------+--------------------------------------------------------------------------------------------------------------------+
```
```{include} /guide/storage_providers/rclone.md
```
### Create Storage Mapping
Storage Mappings for Custom Storage Providers can only be configured by Administrators.
1. From the Workspaces app , select the desired Workspace, User or Group to associate with the Storage Mapping.
2. Select **Storage Mapping** tab and select **Add Storage Mapping**.
```{figure} /images/storage_mapping/custom/add_storage_mapping.png
:align: center
**Add Storage Mapping**
```
3. Select the Custom Storage Provider from the **Type** dropdown and select **Next**
```{figure} /images/storage_mapping/custom/custom_storage_mapping.png
:align: center
**Configure Storage**
```
4. Launch a new container-based session. Verify the Custom storage is mapped inside the session at the `/custom` location.
```{figure} /images/storage_mapping/custom/files.png
:align: center
**Custom Mount**