Skip to main content
Deploy Consuelo to your preferred platform with CLI-generated configurations.

Platform Support

PlatformUse Case
RailwayRecommended for managed PostgreSQL and Redis
VercelFrontend-focused deployments
DockerSelf-hosted, full control
AWS SAMServerless with AWS integrations

Deploy Command

Basic Deploy

consuelo deploy
The CLI auto-detects your platform by looking for:
  • railway.json → Railway
  • vercel.json → Vercel
  • docker-compose.yml → Docker
  • template.yaml → AWS SAM

Specify Platform

consuelo deploy --platform railway
consuelo deploy --platform vercel
consuelo deploy --platform docker
consuelo deploy --platform aws

Environment

Deploy to a specific environment:
consuelo deploy --env staging
consuelo deploy --env production
EnvironmentDescription
productionLive environment (default)
stagingPre-production testing
previewPull request previews

Deployment Options

FlagDescription
--platform <name>Override auto-detection
--env <environment>Target environment
--dry-runPreview without deploying
--skip-buildSkip build step
--skip-migrationsSkip database migrations

Dry Run

Preview what would be deployed:
consuelo deploy --dry-run
Shows:
  • Files to be deployed
  • Environment variables
  • Build commands
  • Migration scripts

Platform-Specific Details

Railway

Railway is recommended for Consuelo deployments due to built-in PostgreSQL and Redis.
consuelo deploy --platform railway
Generated files:
  • railway.json — Railway configuration
  • Dockerfile — Container definition
Required environment variables:
  • TWILIO_ACCOUNT_SID
  • TWILIO_AUTH_TOKEN
  • TWILIO_PHONE_NUMBER
  • GROQ_API_KEY or OPENAI_API_KEY
See Deploy to Railway for a detailed walkthrough.

Vercel

Best for frontend-heavy deployments.
consuelo deploy --platform vercel
Generated files:
  • vercel.json — Vercel configuration
  • .vercelignore — Exclude patterns

Docker

Full self-hosted deployment.
consuelo deploy --platform docker
Generated files:
  • docker-compose.yml — Service orchestration
  • Dockerfile — Container definition
  • .dockerignore — Exclude patterns
Services included:
  • API server
  • Worker (background jobs)
  • PostgreSQL
  • Redis

AWS SAM

Serverless deployment to AWS.
consuelo deploy --platform aws
Generated files:
  • template.yaml — SAM template
  • samconfig.toml — SAM configuration
  • lambda.js — Lambda entry point
AWS resources created:
  • Lambda functions
  • API Gateway
  • RDS PostgreSQL (optional)
  • ElastiCache Redis (optional)

Database Migrations

Migrations run automatically during deployment unless skipped.

Run Migrations Only

consuelo migrate up

Rollback

consuelo migrate down --steps 1

Migration Status

consuelo migrate status

CI/CD Integration

GitHub Actions

name: Deploy
on:
  push:
    branches: [main]
jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with:
          node-version: '20'
      - run: npm install -g @consuelo/cli
      - run: consuelo deploy --env production
        env:
          RAILWAY_TOKEN: ${{ secrets.RAILWAY_TOKEN }}

GitLab CI

deploy:
  stage: deploy
  script:
    - npm install -g @consuelo/cli
    - consuelo deploy --env production
  only:
    - main

Troubleshooting

Build Failures

consuelo deploy --dry-run --verbose
Shows full build output for debugging.

Migration Failures

consuelo migrate status
Check which migrations have been applied.

Environment Variables

Missing environment variables cause deployment failures. Verify:
consuelo config validate

Next Steps