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.
my-org/my-app as a placeholder. Replace it with your repository before applying the config.
Set up this Astro app for Ravion static or SSR hosting.
Configure the deployment
The bucket and distribution stay in your AWS account, and Ravion versions each deployment. This example uses Railpack for the build. Usebuild_source: dockerfile instead when you need a custom Dockerfile.
For a static Astro site, astro build writes to dist. Set routing to filesystem so generated paths resolve to their files.
ravion.yaml
Apply the config
1
Create the project
2
Preview and apply
PUBLIC_ are exposed to browser code. Add them to build_environment_variables when they are required at build time. Keep server-only values out of a static build.
Custom domain
Use the CloudFront distribution hostname from the module outputs, then follow custom domains to add an ACM certificate and DNS record.Astro SSR on ECS
For on-demand rendering, install@astrojs/node, set output: "server", and configure standalone mode. Astro writes the server entry to dist/server/entry.mjs; run it with Node on port 4321.
ravion.yaml
HOST=0.0.0.0 and PORT=4321 in the runtime environment. Use the ECS service’s Application Load Balancer hostname for your custom domain.
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.