Add a documentation-only AWS deployment guide for operators who want to run Nostream on AWS with a clear, production-oriented setup.
Nostream already supports Docker Compose and Railway one-click deploy.
Motivation
- Many hosted operators use AWS for production relays
- Reduces guesswork around Postgres, Redis, WebSockets, HTTPS, and env configuration
Proposed architecture (primary path)
Document deployment using:
| Component |
AWS service |
| Nostream (Docker) |
Amazon ECS on Fargate |
| Container image |
Amazon ECR (or existing registry) |
| PostgreSQL 14+ |
Amazon RDS for PostgreSQL |
| Redis |
Amazon ElastiCache for Redis |
| HTTPS + WebSockets |
Application Load Balancer (ALB) |
| TLS |
AWS Certificate Manager (ACM) |
Secrets (SECRET, credentials) |
Secrets Manager or SSM Parameter Store |
| Logs |
Amazon CloudWatch Logs |
| Networking |
VPC (public subnets for ALB, private for ECS/RDS/ElastiCache) |
ECS is proposed as the primary path because Nostream is already container-first (Dockerfile, Railway template), and managed RDS + ElastiCache fit a production relay better than a single VM running everything.
Optional appendix
- EC2 + Docker Compose as a small-relay option
Non-goals (v1)
- Terraform / CloudFormation / IaC in repo (can be a follow-up issue)
- EKS, multi-region HA
- Azure / GCP (separate issues)
Happy to implement the guide after scope is confirmed, like :-
- Is ECS Fargate + RDS + ElastiCache + ALB acceptable as the primary documented path?
- Docs-only v1 OK, or should IaC be in scope from the start?
Add a documentation-only AWS deployment guide for operators who want to run Nostream on AWS with a clear, production-oriented setup.
Nostream already supports Docker Compose and Railway one-click deploy.
Motivation
Proposed architecture (primary path)
Document deployment using:
SECRET, credentials)ECS is proposed as the primary path because Nostream is already container-first (
Dockerfile, Railway template), and managed RDS + ElastiCache fit a production relay better than a single VM running everything.Optional appendix
Non-goals (v1)
Happy to implement the guide after scope is confirmed, like :-