Skip to main content
Run Strapi on ECS Fargate behind an Application Load Balancer and keep its relational database in Amazon RDS.

Prerequisites

  • A Git repository containing your application and its production build command.
  • A Ravion account with your AWS account connected. Start free at Ravion signup.
  • The Ravion CLI installed and authenticated. See CLI installation.
The examples use my-org/my-app as a placeholder. Replace it with your repository before applying the config.

Set up this Strapi app for Ravion ECS hosting.

Open in Cursor

Configure the deployment

Ravion provisions the network, ECS service, and RDS database in your AWS account. This example uses Railpack for the build. Use build_source: dockerfile instead when you need a custom Dockerfile. Strapi builds with npm run build and starts with npm run start. The example includes PostgreSQL RDS. After the first apply, put the RDS endpoint and credentials into the service’s runtime variables or a Secrets Manager secret.
ravion.yaml
Use a Secrets Manager secret for DATABASE_CLIENT, DATABASE_HOST, DATABASE_PORT, DATABASE_NAME, DATABASE_USERNAME, and DATABASE_PASSWORD. The current module schema accepts runtime secrets, but does not expose a typed RDS output-to-secret wiring field; create the secret from the RDS outputs before applying the service.

Apply and connect your domain

Use custom domains for the ALB hostname and certificate.

Next steps

Custom domains

Point a domain at your deployed service and manage its certificate.

Project config

Preview and apply Ravion configuration from source control.

Pipelines

Add approvals, migrations, and deployment automation.

Logs and metrics

Inspect deploy output and production health in Ravion.