While the open-source version is available for local use and experimentation, for commercial use please reach out for a demo call with our team.

Docker Compose

LangWatch is available as a Docker Compose setup for easy deployment on your local machine. This section provides instructions for installing the Langwatch Docker Compose setup.

Prerequisites

git clone https://github.com/langwatch/langwatch.git
cp langwatch/.env.example langwatch/.env
docker compose up -d --wait --build
open http://localhost:5560

Local Development

To run the project locally, you need to start the databases and LangWatch services. Start just the databases using docker and leave it running:

docker compose up redis postgres opensearch

Then, on another terminal, install the dependencies and start LangWatch:

make install
make start

Helm Chart for LangWatch

LangWatch is available as a Helm chart for easy deployment on Kubernetes. This section provides instructions for installing the Langwatch Helm chart.

Required Values

When installing this chart, the following environment variables must be provided:

  • app.env.NEXTAUTH_SECRET: A random string used to hash tokens, sign cookies, and generate cryptographic keys. Required for authentication to work.
  • app.env.API_TOKEN_JWT_SECRET: A random string used to securely store API tokens.
  • app.env.BASE_HOST: The base URL of the application (e.g., http://localhost:5560).
  • app.env.NEXTAUTH_URL: The URL of the authentication service (usually same as BASE_HOST).

Example Setup

# Generate secure secrets
export NEXTAUTH_SECRET=$(openssl rand -base64 32)
export API_TOKEN_JWT_SECRET=$(openssl rand -base64 32)

# Set application URLs
export BASE_HOST="http://localhost:5560"
export NEXTAUTH_URL="http://localhost:5560"

# Add LangWatch Helm repository
helm repo add langwatch https://langwatch.github.io/langwatch/
helm repo update

# Install the chart
helm install langwatch langwatch/langwatch-helm \
  --set app.env.NEXTAUTH_SECRET=$NEXTAUTH_SECRET \
  --set app.env.API_TOKEN_JWT_SECRET=$API_TOKEN_JWT_SECRET \
  --set app.env.BASE_HOST=$BASE_HOST \
  --set app.env.NEXTAUTH_URL=$NEXTAUTH_URL