Skip to main content

Usage

elizaos deploy [options]
Deploy your ElizaOS project to AWS ECS through ElizaOS Cloud. This command builds a Docker image, pushes it to ECR, and creates an ECS service.

Options

OptionDescriptionDefault
-n, --name <name>Name for the deployment-
--project-name <name>Project nameDirectory name
-p, --port <port>Port the container listens on3000
--desired-count <count>Number of container instances to run (1-10)1
--cpu <units>CPU units (256-2048)1792
--memory <mb>Memory in MB (512-2048)1792
-k, --api-key <key>ElizaOS Cloud API key-
-u, --api-url <url>ElizaOS Cloud API URLhttps://www.elizacloud.ai
-e, --env <KEY=VALUE>Environment variable (repeatable)-
--skip-buildSkip Docker build, use existing imagefalse
--image-uri <uri>Use existing ECR image URI (requires --skip-build)-
--platform <platform>Docker platform for buildHost platform

Resource Defaults

The default CPU and memory settings (1792 units each) are optimized for AWS t4g.small instances:
  • CPU: 1792 units = 1.75 vCPU (87.5% of t4g.small’s 2 vCPUs)
  • Memory: 1792 MB = 1.75 GiB (87.5% of t4g.small’s 2 GiB)

Examples

Basic Deployment

# Deploy current project with defaults
elizaos deploy

# Deploy with a specific name
elizaos deploy --name my-agent-prod

# Deploy with custom port
elizaos deploy --port 8080

Resource Configuration

# Deploy with increased resources
elizaos deploy --cpu 2048 --memory 2048

# Deploy multiple instances for high availability
elizaos deploy --desired-count 3

# Deploy with minimal resources
elizaos deploy --cpu 256 --memory 512

Environment Variables

# Pass single environment variable
elizaos deploy -e OPENAI_API_KEY=sk-xxx

# Pass multiple environment variables
elizaos deploy \
  -e OPENAI_API_KEY=sk-xxx \
  -e DISCORD_TOKEN=xxx \
  -e DATABASE_URL=postgres://...

Advanced Options

# Skip build and use existing image
elizaos deploy --skip-build --image-uri 123456789.dkr.ecr.us-east-1.amazonaws.com/my-agent:latest

# Build for specific platform (cross-compilation)
elizaos deploy --platform linux/amd64

# Build for ARM (Graviton instances)
elizaos deploy --platform linux/arm64

Custom API Endpoint

# Deploy to custom ElizaOS Cloud instance
elizaos deploy --api-url https://custom.elizacloud.ai --api-key your-key

Deployment Output

On successful deployment, the command outputs:
  • Container ID: Unique identifier for your deployment
  • Service ARN: AWS ECS service Amazon Resource Name
  • Task Definition ARN: AWS ECS task definition ARN
  • Service URL: Public URL to access your agent

Validation

The command validates options before deployment:
OptionValid Range
--port1-65535
--desired-count1-10
--cpu256-2048
--memory512-2048

Authentication

Deployment requires authentication with ElizaOS Cloud:
# Login first (recommended)
elizaos login

# Or provide API key directly
elizaos deploy --api-key your-api-key
  • login: Authenticate with ElizaOS Cloud
  • containers: Manage deployed containers
  • start: Run locally before deploying