Migrate from Google Cloud

Move from Cloud Run, GKE, or App Engine to RaidFrame.

Overview

Google Cloud Platform offers Cloud Run, GKE, App Engine, and Compute Engine — each with different tradeoffs, pricing models, and configuration complexity. RaidFrame replaces all of them with a single deploy command.

What Replaces What

GCP ServiceRaidFrame Equivalent
Cloud Runrf deploy (web service)
GKErf deploy (containers, auto-scaled)
App Enginerf deploy (auto-detected stack)
Compute EngineNot needed (containers handle it)
Cloud SQL (PostgreSQL)rf add postgres
Memorystore (Redis)rf add redis
Cloud Storagerf add storage
Pub/Subrf add queue (pub/sub mode)
Cloud Tasksrf add queue + workers
Cloud Schedulerrf cron add
Cloud LoggingBuilt-in (rf logs)
Cloud MonitoringBuilt-in (rf metrics)
Cloud Load BalancingBuilt-in
Cloud CDNBuilt-in CDN
Artifact RegistryBuilt-in (push and deploy)
Cloud BuildBuilt-in CI/CD
Secret Managerrf secrets set
Firebase HostingStatic service (type: static)

Migrate from Cloud Run

Cloud Run is the closest GCP equivalent to RaidFrame. Migration is straightforward.

Export Configuration

Your Cloud Run service YAML:

# GCP Cloud Run service.yaml
apiVersion: serving.knative.dev/v1
kind: Service
metadata:
  name: api
spec:
  template:
    metadata:
      annotations:
        autoscaling.knative.dev/minScale: "1"
        autoscaling.knative.dev/maxScale: "10"
    spec:
      containerConcurrency: 80
      containers:
        - image: gcr.io/my-project/api:latest
          ports:
            - containerPort: 8080
          resources:
            limits:
              cpu: "2"
              memory: 1Gi
          env:
            - name: DATABASE_URL
              value: postgresql://...

Becomes:

# raidframe.yaml
services:
  api:
    type: web
    build:
      dockerfile: Dockerfile
    port: 8080
    resources:
      cpu: 2
      memory: 1GB
    scaling:
      min: 1
      max: 10

Database

# Export from Cloud SQL
gcloud sql export sql my-instance gs://my-bucket/backup.sql --database=mydb
gsutil cp gs://my-bucket/backup.sql ./backup.sql

# Import to RaidFrame
rf add postgres --plan pro
rf db import main backup.sql

Environment Variables

# Export from Cloud Run
gcloud run services describe api --format='yaml' | \
  grep -A1 'name:' | grep -E '(name|value):' | \
  paste - - | awk '{print $2"="$4}' > .env

# Import
rf env push

Storage

rf add storage
gsutil -m rsync -r gs://my-gcs-bucket/ ./local/
rf storage sync ./local/ s3://my-app-uploads/

Migrate from GKE

If you're running Kubernetes on GKE, you already have Dockerfiles. The migration is about simplifying:

# Your k8s deployment → raidframe.yaml
rf init --from kubernetes ./k8s/
Reading Kubernetes manifests...

Found:
  Deployment: api (2 replicas, 1 CPU, 2GB) → web service
  Deployment: worker (1 replica) → worker service
  CronJob: cleanup (0 3 * * *) → cron service
  Service: api (port 8080) → load balancer (auto)
  Ingress: api.myapp.com → rf domains add api.myapp.com
  Secret: db-credentials → rf secrets set
  ConfigMap: app-config → rf env set
  PVC: uploads → rf add storage

Generated: raidframe.yaml

What you stop managing:

  • Kubernetes cluster upgrades
  • Node pool sizing and auto-scaling
  • Helm charts and kustomize overlays
  • Ingress controllers (nginx, Istio)
  • PersistentVolumeClaim provisioning
  • NetworkPolicy configuration
  • Pod security policies
  • kubectl context switching

Migrate from App Engine

# app.yaml → raidframe.yaml
rf init --from appengine
app.yamlraidframe.yaml
runtime: python39Auto-detected from Dockerfile
instance_class: F2resources: { cpu: 1, memory: 1GB }
automatic_scalingscaling: { min: 1, max: 10 }
env_variablesrf env set
handlersNot needed (your framework handles routing)

Cost Comparison

Typical small SaaS on GCP vs RaidFrame:

ComponentGCP MonthlyRaidFrame
Cloud Run (2 instances avg)$45
Cloud SQL db-f1-micro$8
Cloud SQL db-custom (prod)$50
Memorystore (1GB)$35
Cloud Storage (50GB)$1
Cloud Load Balancing$20
Cloud Logging (50GB)$25
Cloud Build (120 min)$1
Artifact Registry$1
Total$186/mo$57/mo

The hidden GCP cost: the $4,676 Cloud Run bill from bot traffic that went viral on Hacker News. On RaidFrame, your bill stays flat regardless of bot traffic.

Deploy

rf deploy
rf domains add myapp.com

Update DNS. Done.