I am looking into self hosting 20 crm on my company AWS account. We are choosing to NOT use the docker compose set up, since we need an external RDS instance. We plan on making a read replica of the RDS instance and having analytics set up on that through Tableau. Anyway, Is there any documentation on hosting 20 CRM on AWS and having our own RDS instance?
#Self hosting 20 on AWS with external RDS instance
1 messages · Page 1 of 1 (latest)
Searched self hosting AWS RDS database configuration
Found 10 results
Searched self hosting external database PostgreSQL configuration
Found 10 results
Thinking...
The documentation does not have a specific guide for deploying Twenty on AWS with an external RDS instance outside of Docker Compose. However, based on the available documentation, here is what you need to know:
Database Configuration
Twenty uses PostgreSQL and you can point it to an external database by setting the PG_DATABASE_URL environment variable. This is an infrastructure-level setting that can only be configured via the .env file (not through the admin panel).
PG_DATABASE_URL=postgres://username:password@your-rds-endpoint:5432/your-database-name
Key Requirements
- PostgreSQL - Twenty requires PostgreSQL (your RDS instance)
- Redis - Twenty also requires a Redis cache for best performance (you could use AWS ElastiCache)
- Server and Worker containers - You will need to run both the Twenty server and worker processes
Deployment Approach
Since you are skipping Docker Compose, you would need to:
- Deploy the Twenty server and worker as separate services (e.g., on ECS, EKS, or EC2)
- Point
PG_DATABASE_URLto your RDS instance - Configure Redis connection via environment variables
- Set other required environment variables like
APP_SECRET,SERVER_URL, etc.
For Production on AWS with Lambda (for logic functions):
SERVERLESS_TYPE=LAMBDA
SERVERLESS_LAMBDA_REGION=us-east-1
SERVERLESS_LAMBDA_ROLE=arn:aws:iam::123456789:role/your-lambda-role
SERVERLESS_LAMBDA_ACCESS_KEY_ID=your-access-key
SERVERLESS_LAMBDA_SECRET_ACCESS_KEY=your-secret-key
The documentation mentions a "Cloud Providers" section for deploying on AWS, GCP, or Azure, but the specific content for that page was not returned in my search. You may want to check the Cloud Providers page directly for more AWS-specific guidance.
For your read replica setup with Tableau, that should work since you are managing the RDS instance externally - Twenty will write to the primary and your analytics can read from the replica.
These pages may help: