Skip to main content
The deploy command is a one-shot workflow that creates a pod (if it doesn’t exist), syncs your local code, installs dependencies, and reloads the app service. You can also deploy straight from a GitHub repo with --repo — no local files needed.

Basic Usage

What Happens

  1. Pod check — If the pod doesn’t exist, it’s created (and the CLI waits for it to be running)
  2. File sync — Local directory is uploaded to the pod’s app root
  3. Reload — App service is restarted, dependencies auto-installed (skip with --no-reload)
If the pod already exists, the command skips creation and goes straight to syncing.

Deploy from a GitHub repo

Point deploy at a GitHub repository instead of local files. InstaPods detects the stack from the repo, creates the pod, attaches the repo, and builds & runs it. Every push after that redeploys automatically (with build logs and rollback, like git deploy).
With --repo the CLI skips local file sync: it detects the preset from the repo’s root files (same rules as below), creates the pod, then follows the first build to completion. Public repos work out of the box; private repos need a GitHub account connected in the dashboard. If the stack can’t be detected, pass --preset.

Flags

Preset Auto-Detection

If --preset is omitted, the CLI scans your local directory for signature files: Detection checks in order: Node.js, PHP, Python, Static. The first match wins.

Examples

Reload is on by default — it auto-installs dependencies from package.json or requirements.txt before restarting the service. Use --no-reload to skip this step if you only want to sync files.