infra/prd_resources.py.
Prerequisites
Before deploying, complete these steps:Deploy to AWS
Once prerequisites are complete:- Docker image pushed to ECR
- RDS PostgreSQL instance
- ECS Cluster, Service, and Task Definition
- Application Load Balancer with Target Group
- AWS Secrets Manager entries
RDS takes about 5 minutes to provision. You can monitor progress in the AWS Console.
Verify Deployment
After deployment completes, verify everything is working:Check the health endpoint
Get your load balancer DNS from the AWS Console (EC2 → Load Balancers), then:Check CloudWatch logs
Application startup complete to confirm the app started.
Check ECS service status
ECR Authentication
If you haven’t set up ECR yet, see Getting Started - AWS Setup.
Update Deployments
After making changes to your code or configuration:Rebuild and push image
Update task definition
Required when you change: image, CPU, memory, or environment variables.Update service
Triggers a new deployment with the latest task definition:Shortcut: If you only rebuilt the image (no config changes), you can skip the task definition update and just patch the service.
Customize Your Deployment
Editinfra/prd_resources.py to customize:
| Setting | Location | Default |
|---|---|---|
| CPU | prd_fastapi | 1024 (1 vCPU) |
| Memory | prd_fastapi | 2048 (2 GB) |
| Task count | ecs_service_count | 1 |
| Health check path | health_check_path | /health |
prd_resources.py