Learn how to self-host Trieve with Docker Compose
curl https://get.docker.com | sh
git clone https://github.com/devflowinc/trieve cd trieve
.env
cp .env.example .env
docker compose up -d
docker compose -f docker-compose-cpu-embeddings.yml up -d
docker compose -f docker-compose-gpu-embeddings.yml up -d
SPARSE_SERVER_QUERY_ORIGIN SPARSE_SERVER_DOC_ORIGIN EMBEDDING_SERVER_ORIGIN SPARSE_SERVER_QUERY_ORIGIN
nano /etc/caddy/Caddyfile
dashboard.yourdomain.com { reverse_proxy localhost:5173 } chat.yourdomain.com { reverse_proxy localhost:5175 } search.yourdomain.com { reverse_proxy localhost:5174 } api.yourdomain.com { reverse_proxy localhost:8090 } auth.yourdomain.com { reverse_proxy localhost:8080 }
sudo systemctl reload caddy.service
A dashboard.yourdomain.com your-server-ip A chat.yourdomain.com your-server-ip A search.yourdomain.com your-server-ip A auth.yourdomain.com your-server-ip A api.yourdomain.com your-server-ip
KC_HOSTNAME="auth.yourdomain.com" KC_PROXY=edge VITE_API_HOST=https://api.yourdomain.com/api VITE_SEARCH_UI_URL=https://search.yourdomain.com VITE_CHAT_UI_URL=https://chat.yourdomain.com VITE_ANALYTICS_UI_URL=https://analytics.yourdomain.com VITE_DASHBOARD_URL=https://dashboard.yourdomain.com OIDC_AUTH_REDIRECT_URL="https://auth.yourdomain.com/realms/trieve/protocol/openid-connect/auth" OIDC_ISSUER_URL="https://auth.yourdomain.com/realms/trieve" BASE_SERVER_URL="https://api.yourdomain.com"
https://api.yourdomain.com/* https://dashboard.yourdomain.com/* https://chat.yourdomain.com/* https://search.yourdomain.com/*
trieve login # Make sure to set the api url to http://localhost:8090 trieve dataset example
Was this page helpful?