Self-Hosting Requirements
Minimum Requirements
Docker Images:
- At least two Docker containers:
- One or more for the API.
- One or more for the worker.
- Resource Requirements:
- In AWS, we run each container with at least 1 vCPU and 2 GB of memory. The containers are stateless, so they can easily be scaled horizontally to handle increased load.
- At least two Docker containers:
PostgreSQL Database:
- A dedicated PostgreSQL instance.
- For our hosted instances in AWS, we start environments on a
db.t4g.medium
. This has 2 vCPUs and 4 GiB of memory. - The amount of storage required will vary heavily depending the size of your content library.
RabbitMQ Broker:
- A dedicated RabbitMQ broker.
- For our hosted instances in AWS, we start environments on an
mq.t3.small
. This has 2 vCPUs and 1 GiB of memory.
AWS Resources:
- An S3 bucket to store content files.
- Access to AWS Bedrock.
- Access to AWS Transcribe.
Recommended Resources
- Load Balancer (LB):
- Place a load balancer in front of your API containers.
- Autoscaling:
- Ideally, the application would be able to automatically scale the number of containers up and down depending on usage.