
DBDigitalOcean Spaces is a simple, scalable cloud storage solution for managing files like media, backups, and logs outside your application. With S3 compatibility, stateless architecture support, and easy setup, it’s a practical choice for handling data efficiently while keeping your app lightweight and independent.
DigitalOcean Spaces - is a cloud storage service, where you can keep all your digital items in a “spaces bucket” — our special cloud-based folder.
Usage | Features |
|---|---|
Stateless architecture | No worries about disk space |
Backups | Independent storage |
Archive logs | External service that manages data storage |
Media data (photos, videos, docs, etc.) | Sharing access |
Personal / Secret data (contracts, invoices, passports, etc.) | Ability to have Stateless architecture |
DigitalOcean Spaces | AWS S3 |
|---|
Very simple console | Functional console |
Compatible with S3 API
| Compatible with AWS services such as:
|
Scalability: Petabyte-scale | Scalability: Virtually unlimited |
Video/image compressor/convertor |





if you see the same error, follow the steps below:




All "API" or "Monolith apps" domains could support allHTTPmethods (GET,PUT,DELETE,POST,HEAD). The basic domain (like apps which only reached the content from API) could only allow theGETmethod for enhanced security, limiting interactions to data retrieval.
Don’t forget add/update variables to “Environments“
- 'default_media_disk_name' => 'media',
+ 'default_media_disk_name' => 'do_spaces',# API or Monolith apps domains:
Origin: https://example-api-domain.com
Allowed Methods: GET, PUT, DELETE, POST, HEAD
Allowed Headers: # No additional headers selected
Access Control Max Age: 0 # set this up by your requirements# Reached content domains:
Origin: https://example-domain.com
Allowed Methods: GET
Allowed Headers: # No additional headers selected
Access Control Max Age: 0 # set this up by your requirements /* filesystems.php config file */
'do_spaces' => [
'driver' => 's3',
'key' => env('DO_SPACES_KEY'),
'secret' => env('DO_SPACES_SECRET'),
'endpoint' => env('DO_SPACES_ENDPOINT'),
'region' => env('DO_SPACES_REGION'),
'bucket' => env('DO_SPACES_BUCKET'),
],