Running on a single node
Create your node on the cloud. For example, on AWS, you can create an EC2 instance. Make sure that the instance has enough memory and disk space to run Helicone. For example, you can use them5.xlarge instance type on AWS.
Recommended Requirements
- 4 vCPUs
- 16 GB RAM
- 100 GB disk space
Option 1: All-in-One Image (Recommended)
The simplest approach uses the pre-builthelicone-all-in-one Docker image.
Within your remote machine
Install Docker Run the container with your server’s public IP:Adding HTTPS through a reverse proxy (optional)
If you want to serve Helicone through a custom domain with HTTPS, you’ll need a reverse proxy. Caddy is one option that provides automatic HTTPS with Let’s Encrypt certificates. You can also use nginx, Traefik, or any other reverse proxy.-
Point a domain to your server’s IP (A record), e.g.,
helicone-api.yourdomain.com - Install Caddy:
- Create
/etc/caddy/Caddyfile:
- Run Caddy:
https://helicone-api.yourdomain.com.
Option 2: Build from Source
For more control, you can build and run Helicone from source using Docker Compose.Within your remote machine
Install Docker Step 1: Clone the repoAccessing via SSH tunnel
Assuming you have your ssh config setup like this:Production Checklist
The next steps before becoming production ready are:-
Follow the instructions here like
- Change the default password
- Add a custom domain
- Add SSL
- Add a SMTP server
- Generate API keys
-
Add a load balancer in front of the server
- Add HTTPS to web and workers
- Change public variables for our backend routes. (NEXT_PUBLIC_BASE_PATH, SUPABASE_PUBLIC_URL, API_EXTERNAL_URL)
- Add a database backup strategy and change the volume to a persistent volume