Self-Hosted On-Prem (Ubuntu)
Deploy the full RoostGPT stack on a single Ubuntu server inside your network.
Server Requirements
| Requirement | Specification |
|---|---|
| Operating System | Ubuntu Server 22.04 or higher |
| CPU | Minimum 8 cores |
| RAM | Minimum 16 GB |
| Root Disk | Minimum 50 GB |
| Additional Disk | Minimum 250 GB — mounted at /var/tmp/Roost |
| Sudo Access | Ubuntu user should have preferably passwordless sudo access |
Step 1: Prepare the Additional Disk
The RoostGPT stack requires a dedicated volume mounted at /var/tmp/Roost. Run these steps before launching the installer.
# Confirm the volume is visible
lsblk
blkid
# Format the volume (if new/unformatted)
sudo mkfs -t ext4 /dev/nvme0n1
# Create the mount point and mount
sudo mkdir -p /var/tmp/Roost
sudo mount /dev/nvme0n1 /var/tmp/Roost
# Persist mount across reboots
echo "/dev/nvme0n1 /var/tmp/Roost ext4 defaults 0 2" | sudo tee -a /etc/fstab
# Verify
df -h /var/tmp/Roost
If df -h /var/tmp/Roost shows the root filesystem (/dev/nvme0n1 not listed), the volume is not mounted — run the steps above before proceeding.
Step 2: Configure Network and SSL Certificates
SSL Certificates
Copy your SSL certificate and key to the Ubuntu server. Note the full paths — they are required in the config.json file used by the deployment tool.
# Example: copy certs from your local machine
scp server.cer server.key ubuntu@<server-ip>:/var/tmp/Roost/certs/
Open Firewall Ports
Allow the following inbound traffic on the server:
| Protocol | Port | Source |
|---|---|---|
| TCP (HTTPS) | 443 | All IPs in the company network |
| SSH | 22 | IT support staff only |
| TCP | 60001–62120 | Internal |
Step 3: Download the Roost Deployment Tool
curl -sLO https://github.com/roost-io/roost-support/releases/latest/download/roost-deployment-tool
chmod +x roost-deployment-tool
The tool prompts for all required configuration details and launches the full RoostGPT stack automatically.
Step 4: Launch the RoostGPT Stack
./roost-deployment-tool create-stack
The tool will:
- Prompt for your license key, domain name, SSL certificate paths, and AI provider details
- Pull all required Docker images from Docker Hub
- Start all RoostGPT services
Once complete, navigate to https://<your-domain> to confirm the stack is running.
Upgrading RoostGPT
To refresh or upgrade the stack to a newer version:
./roost-deployment-tool refresh-stack
Docker Images
The following Docker images are pulled from Docker Hub during deployment:
| Image | Tag |
|---|---|
zbio/roostai_mysql_db | v1.1.17 |
zbio/roost-nginx | latest |
zbio/roost-app | v1.1.17 |
zbio/roostai-server | v1.1.17 |
zbio/roostgpt-go | v1.1.17 |
zbio/roostgpt | v1.1.17 |
zbio/roostgpt-ui | v1.1.17 |
zbio/roost-proxy | v1.1.17 |
Ensure your server can reach hub.docker.com on port 443.
What RoostGPT Requires to Operate
Before deploying, have the following ready:
- Roost License Token or File — provided by the Roost team
- Gen-AI Provider API Key — OpenAI, Azure OpenAI, Claude, Google Gemini, or AWS Bedrock
- GitHub API Token — with read and write permissions
Optional:
- Jira API Token — for functional test generation from user stories
- Email Server credentials — for notifications
- Slack or MS Teams token — for notifications
Database
RoostGPT requires a relational database to store test configurations, connector information, and user/team data. 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, use a managed database service for reliability, security, and support guarantees.
Troubleshooting
| Issue | Fix |
|---|---|
roost-deployment-tool exits immediately | Confirm execute permissions: chmod +x roost-deployment-tool |
/var/tmp/Roost shows root filesystem | Volume not mounted — see Step 1 |
| Stack fails to start | Check Docker is installed and the daemon is running: docker info |
| Certificate errors | Verify cert and key paths match what was provided in config.json |
For further help, see the Troubleshooting guide or contact support@roost.ai.