Roadmap
Phase 2: Container Migration
ECS Fargate migration, AWS Secrets Manager, and CI/CD pipeline.
Phase 2: Container Migration
Status: Planned | Target: Q2 2026
Phase 2 migrates Steadybase from a single EC2 instance to ECS Fargate — AWS's serverless container platform — while moving secrets to AWS Secrets Manager and implementing CI/CD.
Goals
- Container isolation — Each service runs in its own container
- No server management — Fargate eliminates SSH, patching, and OS maintenance
- Secrets management — Move from .env files to AWS Secrets Manager
- Automated deployment — CI/CD pipeline via GitHub Actions
- Centralized logging — CloudWatch for all services
Planned Work
Infrastructure
- Dockerize the API server
- Dockerize the Temporal worker
- Set up ECR (Elastic Container Registry)
- Create ECS cluster and services
- Configure Application Load Balancer (ALB)
- Set up VPC with public/private subnets
- Configure security groups
Secrets Manager
- Migrate
TEMPORAL_TLS_CERTto Secrets Manager - Migrate
TEMPORAL_TLS_KEYto Secrets Manager - Migrate
VAPI_API_KEYto Secrets Manager - Migrate
SLACK_BOT_TOKENto Secrets Manager - Migrate
SLACK_SIGNING_SECRETto Secrets Manager - Migrate JWT signing key to Secrets Manager
- Migrate invite codes to Secrets Manager
- Update ECS task definitions to reference secrets
- Remove .env files from all environments
CI/CD
- GitHub Actions workflow: build + test
- Docker image build and push to ECR
- ECS rolling deployment on merge to main
- Environment-specific deployments (staging, production)
- Security scanning in CI pipeline (Snyk/Trivy)
Monitoring
- CloudWatch log groups for all services
- CloudWatch alarms for error rates, latency
- Health check endpoints monitored by ALB
- Container-level metrics (CPU, memory, network)
Timeline
| Week | Milestone |
|---|---|
| 1-2 | Dockerize application, test locally |
| 2-3 | ECR + ECS cluster setup, ALB configuration |
| 3-4 | Secrets Manager migration |
| 4-5 | CI/CD pipeline implementation |
| 5-6 | Staging environment validation |
| 6 | DNS cutover, EC2 decommission |
Dependencies
- Phase 1 security hardening substantially complete
- AWS account with ECS, ECR, Secrets Manager, and ALB permissions
- GitHub repository connected to GitHub Actions