Skip to content

Cloud Providers Setup Guide

Complete step-by-step guides for configuring AWS S3, Google Cloud Storage, Azure Blob Storage, FTP/SFTP, and DigitalOcean Spaces with The Stratus extension.

Pro Providers: Google Cloud Storage, Azure Blob Storage, and DigitalOcean Spaces require a Pro license. Upgrade at thestratus.co/pricing

Quick Comparison

Provider Best For Starting Price Setup Difficulty
AWS S3 Static websites, CDN $0.023/GB/month Medium
Google Cloud Analytics, large scale $0.020/GB/month Medium
Azure Blob Enterprise integration $0.0184/GB/month Medium
DigitalOcean Simple, predictable $5/month (250GB) Easy
FTP / SFTP Traditional hosting Varies by host Easy

Amazon S3 Setup

AWS S3 is the most popular object storage service, perfect for static websites, media files, and CDN distribution.

Prerequisites

Step 1: Create an S3 Bucket

  1. Log into AWS S3 Console
  2. Click Create bucket
  3. Enter a unique bucket name (e.g., my-website-2025)
  4. Choose your AWS region (e.g., us-east-1)
  5. Configure settings:
    • Block Public Access: Uncheck if hosting a public website
    • Versioning: Optional (recommended for backups)
    • Encryption: Optional (AES-256 by default)
  6. Click Create bucket

Step 2: Create IAM User & Access Keys

  1. Go to IAM Console
  2. Navigate to UsersAdd users
  3. Enter username: stratus-deploy
  4. Select Access key - Programmatic access
  5. Click Next: Permissions
  6. Attach policy: AmazonS3FullAccess (or create custom policy)
  7. Click through to create user
  8. Save your credentials:
    • Access Key ID: AKIA...
    • Secret Access Key: ******** (shown only once!)
Security Best Practice: Create a custom IAM policy that only grants access to your specific bucket, not all S3 buckets.

Step 3: Configure in The Stratus

  1. Open Command Palette: Stratus: Add New Server
  2. Select AWS S3
  3. Enter your credentials:
    Access Key ID: AKIA...
    Secret Access Key: ********
    Region: us-east-1
    Bucket Name: my-website-2025
    Path Prefix: (optional, e.g., "public/")
    ACL: public-read (for public websites)
    Cache Control: max-age=3600 (optional)
  4. Test connection
  5. Start syncing!

Example Configuration

{
  "provider": "aws-s3",
  "config": {
    "accessKeyId": "AKIA...",
    "secretAccessKey": "********",
    "region": "us-east-1",
    "bucket": "my-website-2025",
    "prefix": "public/",
    "acl": "public-read",
    "cacheControl": "max-age=31536000, immutable",
    "storageClass": "STANDARD"
  }
}

Pricing

  • Storage: $0.023/GB/month (first 50TB)
  • PUT Requests: $0.005 per 1,000 requests
  • GET Requests: $0.0004 per 1,000 requests
  • Data Transfer: $0.09/GB (after 100GB free/month)
Cost Optimization: Use CloudFront CDN to reduce data transfer costs and improve performance.

Google Cloud Storage Setup

Pro Feature: Google Cloud Storage requires a Pro license.

Google Cloud Storage offers excellent performance, global coverage, and tight integration with other Google services.

Prerequisites

  • Google Cloud Platform account (Sign up)
  • Billing enabled (even for free tier)

Step 1: Create GCP Project

  1. Go to GCP Console
  2. Click Select a projectNew Project
  3. Enter project name: stratus-sync
  4. Click Create
  5. Note your Project ID (you'll need this)

Step 2: Enable Cloud Storage API

  1. Go to APIs & ServicesLibrary
  2. Search for "Cloud Storage API"
  3. Click Enable

Step 3: Create Storage Bucket

  1. Navigate to Cloud StorageBuckets
  2. Click Create Bucket
  3. Choose unique name: my-stratus-bucket
  4. Select location (e.g., us-central1)
  5. Choose storage class:
    • STANDARD: Frequently accessed data
    • NEARLINE: Once per month access
    • COLDLINE: Once per quarter access
    • ARCHIVE: Long-term storage
  6. Access control: Fine-grained
  7. Click Create

Step 4: Create Service Account

  1. Go to IAM & AdminService Accounts
  2. Click Create Service Account
  3. Name: stratus-sync-service
  4. Grant role: Storage Object Admin
  5. Click ContinueDone

Step 5: Generate Service Account Key

  1. Click on your service account
  2. Go to Keys tab
  3. Click Add KeyCreate new key
  4. Choose JSON format
  5. Click Create
  6. Save the JSON file securely (e.g., ~/gcp-key.json)
Important: Never commit your service account key to Git! Add it to .gitignore.

Step 6: Configure in The Stratus

  1. Open Command Palette: Stratus: Add New Server
  2. Select Google Cloud Storage
  3. Enter configuration:
    Project ID: stratus-sync
    Key File Path: /Users/you/gcp-key.json
    Bucket Name: my-stratus-bucket
    Path Prefix: (optional)
    Storage Class: STANDARD
  4. Test connection
  5. Start syncing!

Example Configuration

{
  "provider": "gcs",
  "config": {
    "projectId": "stratus-sync",
    "keyFilename": "/Users/you/gcp-key.json",
    "bucket": "my-stratus-bucket",
    "prefix": "public/",
    "storageClass": "STANDARD",
    "predefinedAcl": "publicRead"
  }
}

Pricing

  • Free Tier: 5GB/month
  • STANDARD: $0.020/GB/month
  • NEARLINE: $0.010/GB/month
  • COLDLINE: $0.004/GB/month
  • ARCHIVE: $0.0012/GB/month

Microsoft Azure Blob Storage

Pro Feature: Azure Blob Storage requires a Pro license.

Azure Blob Storage is ideal for enterprises already using Microsoft Azure services and offers excellent global performance.

Prerequisites

  • Microsoft Azure account (Sign up)
  • Active subscription

Step 1: Create Storage Account

  1. Go to Azure Portal
  2. Click Create a resource
  3. Search for "Storage Account"
  4. Click Create
  5. Configure:
    • Resource Group: Create new or select existing
    • Storage account name: stratusstorageacct (lowercase, unique)
    • Region: Select closest (e.g., East US)
    • Performance: Standard
    • Redundancy: LRS (for development)
  6. Click Review + CreateCreate

Step 2: Create Container

  1. Go to your Storage Account
  2. Click Containers in left menu
  3. Click + Container
  4. Name: stratus-files (lowercase)
  5. Public access level: Private
  6. Click Create

Step 3: Get Connection String

  1. In Storage Account, go to Access keys
  2. Click Show keys
  3. Copy Connection string from key1

Example format:

DefaultEndpointsProtocol=https;AccountName=stratusstorageacct;
AccountKey=ABC123...==;EndpointSuffix=core.windows.net

Step 4: Configure in The Stratus

  1. Open Command Palette: Stratus: Add New Server
  2. Select Azure Blob Storage
  3. Enter configuration:
    Connection String: (paste full string)
    Container Name: stratus-files
    Path Prefix: (optional)
    Access Tier: Hot
  4. Test connection
  5. Start syncing!

Example Configuration

{
  "provider": "azure-blob",
  "config": {
    "connectionString": "DefaultEndpointsProtocol=https;AccountName=...",
    "containerName": "stratus-files",
    "prefix": "uploads/",
    "accessTier": "Hot",
    "blobHTTPHeaders": {
      "blobCacheControl": "max-age=3600"
    }
  }
}

Pricing

  • Hot Tier: $0.0184/GB/month
  • Cool Tier: $0.01/GB/month
  • Archive Tier: $0.00099/GB/month
  • Operations: $0.05 per 10,000 writes (Hot)

DigitalOcean Spaces

Pro Feature: DigitalOcean Spaces requires a Pro license.

DigitalOcean Spaces offers simple, predictable pricing and is 100% S3-compatible. Perfect for developers who want no surprises.

Prerequisites

  • DigitalOcean account (Sign up)
  • Billing method added

Step 1: Create a Space

  1. Go to DigitalOcean Cloud
  2. Click Spaces in sidebar
  3. Click Create Spaces Bucket
  4. Choose datacenter region:
    • NYC3 (New York)
    • AMS3 (Amsterdam)
    • SGP1 (Singapore)
    • SFO3 (San Francisco)
    • FRA1 (Frankfurt)
    • SYD1 (Sydney)
  5. Enable CDN: Optional (+$1/month)
  6. Choose unique name: my-stratus-space
  7. File Listing: Restricted
  8. Click Create a Spaces Bucket

Step 2: Generate Access Keys

  1. Go to API in left sidebar
  2. Scroll to Spaces access keys
  3. Click Generate New Key
  4. Name: stratus-sync-key
  5. Save both credentials:
    • Access Key: DO00ABC123...
    • Secret Key: ******** (shown only once!)

Step 3: Configure in The Stratus

  1. Open Command Palette: Stratus: Add New Server
  2. Select DigitalOcean Spaces
  3. Enter configuration:
    Access Key: DO00ABC123...
    Secret Key: ********
    Region: nyc3
    Space Name: my-stratus-space
    Path Prefix: (optional)
    ACL: private
  4. Test connection
  5. Start syncing!

Example Configuration

{
  "provider": "do-spaces",
  "config": {
    "accessKeyId": "DO00ABC123...",
    "secretAccessKey": "********",
    "region": "nyc3",
    "bucket": "my-stratus-space",
    "prefix": "public/",
    "acl": "public-read",
    "endpoint": "https://nyc3.digitaloceanspaces.com"
  }
}

Pricing

  • Storage: $5/month for 250GB
  • Additional Storage: $0.02/GB/month
  • Bandwidth: 1TB included, then $0.01/GB
  • CDN: +$1/month with 50GB bandwidth
Predictable Pricing: Unlike AWS, DigitalOcean offers simple, flat-rate pricing with no surprise charges.

FTP / SFTP Setup

FTP and SFTP are perfect for traditional web hosting, shared servers, and VPS deployments.

FTP Configuration

{
  "provider": "ftp",
  "config": {
    "host": "ftp.example.com",
    "port": 21,
    "user": "username",
    "password": "********",
    "secure": false,
    "prefix": "public_html/"
  }
}

SFTP Configuration (Password)

{
  "provider": "sftp",
  "config": {
    "host": "sftp.example.com",
    "port": 22,
    "username": "username",
    "password": "********",
    "prefix": "www/"
  }
}

SFTP Configuration (SSH Key)

{
  "provider": "sftp",
  "config": {
    "host": "sftp.example.com",
    "port": 22,
    "username": "username",
    "privateKey": "/Users/you/.ssh/id_rsa",
    "passphrase": "optional-key-passphrase",
    "prefix": "www/"
  }
}
Security Tip: Always use SFTP (SSH) instead of FTP when possible for encrypted connections.

Next Steps

Now that you've configured your cloud provider, explore these resources:

Use Cases

Discover real-world deployment scenarios

View Use Cases →

Configuration

Fine-tune your sync settings

Advanced Config →

Need Help?