APIPod CLI Reference
APIPod CLI is the deployment tool — use it to scan a project, build a Docker container, and start your service. To interact with services from your code or terminal, see the SocaitySDK CLI.
pip install apipod. APIPod ships a Python library (the @serverless decorator) and this CLI; the CLI is what you reach for at deploy time. pip install apipod Inspect your project and generate a deployment configuration. APIPod reads your requirements.txt, detects CUDA/PyTorch/TensorFlow dependencies, and infers the correct base Docker image.
# Scan the project and generate deployment config
apipod --scan Generate a Dockerfile and build your container. APIPod selects compatible CUDA/cuDNN versions automatically. Pass a target file to override the default entry point.
# Build with auto-detected settings
apipod --build
# Specify the target entry-point file
apipod --build ./main.py Run your service locally. Combine with --compute serverless --provider localhost to enable the in-memory job queue, which emulates serverless GPU behaviour for testing.
# Start on the default port (8000)
apipod --start
# Start on a custom port
apipod --start --port 9000
# Enable local job queue (emulates serverless GPU)
apipod --start --compute serverless --provider localhost The deployment flags control which runtime backend APIPod selects. They work with both --build and --start.
# Build for Socaity orchestration
apipod --build --orchestrator socaity
# Build for RunPod serverless
apipod --build --compute serverless --provider runpod
# Start locally with serverless job-queue emulation
apipod --start --compute serverless --provider localhost| Flag | Argument | Description |
|---|---|---|
--scan | (none) | Scan project, detect dependencies, and generate deployment config. |
--build | [FILE] | Build Docker container. Optionally specify the target entry-point file (defaults to main.py). |
--start | (none) | Start the service locally. |
--orchestrator | socaity | local | Orchestration platform. Use "socaity" for Socaity-managed deployment. |
--compute | dedicated | serverless | Compute mode. "serverless" enables the job queue; "dedicated" runs a standard FastAPI server. |
--provider | localhost | runpod | auto | Infrastructure provider. "localhost" activates in-memory job queue for local testing. |
--region | string | Target deployment region (provider-dependent). |
--host | string | Host address to bind to when starting locally (default: 0.0.0.0). |
--port | int | Port to listen on when starting locally (default: 8000). |
The combination of --orchestrator, --compute, and --provider determines which runtime APIPod activates.
| --orchestrator | --compute | --provider | Runtime |
|---|---|---|---|
socaity | serverless | localhost | FastAPI + local job queue (test mode) |
socaity | serverless | runpod | RunPod serverless router |
socaity | dedicated | localhost | FastAPI + local job queue (test mode) |
socaity | dedicated | auto | FastAPI |
local | serverless | localhost | FastAPI + local job queue |
local | serverless | runpod | RunPod serverless router |
local | dedicated | localhost | FastAPI |