Skip to main content

AWS Infrastructure Reference

This page documents the AWS resources, Docker images, and network requirements for a RoostGPT deployment. Use this as a reference alongside the AWS Terraform Deployment guide.


Terraform Resources Provisioned

The following AWS resources are created by the Roost Terraform scripts:

ResourceDescription
aws_key_pairEC2 key pair for SSH access
aws_eipElastic IP used by the NAT gateway for the public subnet
aws_amiUbuntu-based AMI — region specific
aws_vpcVirtual Private Cloud
aws_availability_zonesPreferred availability zones
aws_internet_gatewayInternet gateway for VPC outbound access (e.g. apt update)
aws_subnetPrivate and public subnets
aws_security_groupSecurity groups for bastion, backend, and frontend services
aws_lb_target_groupTarget groups for the Application Load Balancer
aws_route_tableRoute table entries for inbound and outbound traffic
aws_instanceEC2 instances for RoostGPT frontend and backend services
aws_route_table_associationAllows network traffic for instance-to-instance communication
null_resourceRuns RoostGPT installer scripts on provisioned instances

Docker Images

The following images are pulled from Docker Hub during deployment:

ImageTag
zbio/roostai_mysql_dbv1.1.17
zbio/roost-nginxlatest
zbio/roost-appv1.1.17
zbio/roostai-serverv1.1.17
zbio/roostgpt-gov1.1.17
zbio/roostgptv1.1.17
zbio/roostgpt-uiv1.1.17
zbio/roost-proxyv1.1.17

Ensure the EC2 instances can reach hub.docker.com on port 443.


Network Configuration

Ensure the following inbound ports are allowed on the security groups:

ProtocolPortSource
TCP (HTTPS)443All company network IPs
SSH22IT support staff only
TCP60001–62120Internal

RoostGPT Scripts and Executables

Scripts and binaries are available from the GitHub releases page:

NamePurpose
roost.shDeployment script for hosted stack
roost-enterprise.shController script for hosted stack
main-config.jsonConfiguration template for hosted stack
aiServer.shInternal script for hosted stack
aiServer.gzInternal daemon executable for hosted stack
releaseServer.shInternal script for hosted stack
releaseServer.gzInternal daemon executable for hosted stack
roost.sqlSQL template for database (hosted stack)
roostcertgen.gzSelf-signed certificate generator
roost-deployment-toolInstaller for on-prem single Ubuntu server stack
roostgpt-1.0.15.vsixVS Code plugin

Platform Binaries

ComponentWindowsLinuxmacOS
CLIroostgpt-win.exeroostgpt-linuxroostgpt-macos
UI TestRoostUITestGenerator-win.exeRoostUITestGenerator-linuxRoostUITestGenerator-macos-amd, RoostUITestGenerator-macos-arm
JavaRoostJavaASTParser.jarRoostJavaASTParser.jarRoostJavaASTParser.jar
PythonRoostPythonASTParser-win.exeRoostPythonASTParser-linuxRoostPythonASTParser-mac
C#RoostCSharpASTParser-win.exeRoostCSharpASTParser-linuxRoostCSharpASTParser-macos
GolangRoostGolangASTParser-win.exeRoostGolangASTParser-linuxRoostGolangASTParser-macos
API (Karate)karate-1.4.1.jar, karate-1.5.1.jarkarate-1.4.1.jar, karate-1.5.1.jarkarate-1.4.1.jar, karate-1.5.1.jar

Database Requirements

RoostGPT requires a relational database to store:

  • Test configurations
  • RoostGPT connector information
  • User and team information

Supported databases: MySQL, Amazon Aurora (MySQL-compatible), PostgreSQL, Amazon Aurora (PostgreSQL-compatible)

For POC or limited trials, RoostGPT can use a containerised database included in the stack. For production deployments, use a managed database service for reliability, security, and support guarantees.

See AWS Terraform Deployment — Database Setup for step-by-step RDS provisioning instructions.

Docker Container vs. Cloud-Hosted Database

AspectDocker ContainerCloud Hosted (RDS / Aurora)
Deployment ComplexitySimple — single docker-compose commandModerate — cloud service config and network setup
Setup TimeMinutesHours (initial provisioning)
Target Use CasePOCs, demos, developmentProduction, enterprise
ScalabilityLimited by host resourcesAuto-scaling and horizontal expansion
Data PersistenceDepends on volume config and hostBuilt-in backup, replication, disaster recovery
PerformanceVariable — limited by host specsOptimised with dedicated resources
MaintenanceManual updates, backups, monitoringManaged service — automated maintenance
CostLow — infrastructure onlyHigher — cloud service fees
SecurityBasic — host-level onlyEnterprise-grade encryption and access controls
High AvailabilitySingle point of failureMulti-zone redundancy with automatic failover
Backup and RecoveryManual scripts requiredAutomated point-in-time recovery
ComplianceCustom implementation requiredBuilt-in audit logs and compliance reporting

When to use Docker Container: POC evaluations, development environments, small teams, quick demos.

When to use Cloud Hosted: Production workloads, enterprise deployments, compliance-sensitive environments, large teams requiring high availability.

Organizations typically start with Docker Container for evaluation, then migrate to a managed database service as usage scales.