Skip to main content

From the Dashboard

  1. Navigate to the Dashboard and click Create Pod
  2. Fill in the creation form:
    • Name: A unique name for your pod. Must be lowercase alphanumeric with hyphens (e.g., my-app, staging-api). This becomes your subdomain.
    • Preset: Choose your development stack — Static, PHP, Node.js, or Python
    • Plan: Select resource tier — Starter, Developer, or Professional
    • Region (optional): Pick a geographic region, or leave blank for auto-selection
    • SSH Key (optional): Paste a public SSH key for immediate access
  3. Click Create
Your pod will be ready in 1–2 seconds. You’ll be redirected to the pod detail page.

From the CLI

instapod pods create my-app --preset nodejs --plan developer

Available Flags

FlagDescriptionDefault
--presetPreset slug: static, php, nodejs, pythonRequired
--planPlan slug: starter, developer, professionalstarter
--regionRegion slug (e.g., singapore)Auto-select
--server-idSpecific server IDAuto-select
--cpuCPU cores overridePlan default
--memoryMemory override (e.g., 1GB)Plan default
--diskDisk override (e.g., 10GB)Plan default
--ssh-keyPath to SSH public key fileNone
-w, --waitWait for pod to be ready before returningfalse

Examples

# Basic creation
instapod pods create my-site --preset static

# With specific plan and region
instapod pods create api-server --preset nodejs --plan professional --region singapore

# With SSH key and wait for ready
instapod pods create dev-env --preset python --ssh-key ~/.ssh/id_ed25519.pub --wait

# With resource overrides
instapod pods create heavy-app --preset php --cpu 4 --memory 4GB --disk 40GB

From the API

curl -X POST https://api.instapods.com/api/pods \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "my-app",
    "preset": "nodejs",
    "plan": "developer",
    "region": "singapore",
    "ssh_key": "ssh-ed25519 AAAA... user@host"
  }'

What Happens During Creation

  1. Server selection — The orchestrator picks the least-loaded server in your chosen region (or any region if unspecified)
  2. Container launch — An Incus container is created from the pre-built image for your preset
  3. Network setup — A unique SSH port is allocated and the proxy route is configured
  4. DNS — Your pod’s subdomain is immediately available via wildcard DNS

Pod Naming Rules

  • Lowercase letters, numbers, and hyphens only
  • Must start with a letter
  • 3–40 characters long
  • Must be unique within the platform
  • The name becomes your subdomain: {name}.{server-domain}