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 Users → Add 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 project → New 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 & Services → Library
  2. Search for "Cloud Storage API"
  3. Click Enable

Step 3: Create Storage Bucket

  1. Navigate to Cloud Storage → Buckets
  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 & Admin → Service Accounts
  2. Click Create Service Account
  3. Name: stratus-sync-service
  4. Grant role: Storage Object Admin
  5. Click Continue → Done

Step 5: Generate Service Account Key

  1. Click on your service account
  2. Go to Keys tab
  3. Click Add Key → Create 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 + Create → Create

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?