diff --git a/pod.yaml b/pod.yaml index 4541a55e..db122105 100644 --- a/pod.yaml +++ b/pod.yaml @@ -46,7 +46,7 @@ spec: - name: OLLAMA_API_KEY value: OLLAMA_API_KEY_PLACEHOLDER - name: SERVER_ROOT_PATH - value: /llm-routing/litellm + value: SERVER_ROOT_PATH_PLACEHOLDER - name: PROXY_BASE_URL value: PROXY_BASE_URL_PLACEHOLDER image: ghcr.io/berriai/litellm:v1.91.0 @@ -55,7 +55,7 @@ spec: command: - python3 - -c - - import urllib.request; urllib.request.urlopen('http://localhost:4000/ping') + - import urllib.request; urllib.request.urlopen('http://localhost:4000/health/liveness') initialDelaySeconds: 240 periodSeconds: 15 timeoutSeconds: 5 @@ -273,7 +273,7 @@ spec: - name: NEXTAUTH_SECRET value: NEXTAUTH_SECRET_PLACEHOLDER - name: NEXTAUTH_URL - value: http://localhost:3001 + value: NEXTAUTH_URL_PLACEHOLDER - name: SALT value: SALT_PLACEHOLDER - name: ENCRYPTION_KEY diff --git a/start-stack.sh b/start-stack.sh index fd4f18b5..4f0f9588 100755 --- a/start-stack.sh +++ b/start-stack.sh @@ -84,7 +84,10 @@ fi PUBLIC_BASE_URL="${PUBLIC_BASE_URL%/}" LOCAL_BASE_URL="${LOCAL_BASE_URL:-http://localhost:5000}" LOCAL_BASE_URL="${LOCAL_BASE_URL%/}" -export PUBLIC_BASE_URL LOCAL_BASE_URL +LITELLM_PUBLIC_URL="${LITELLM_PUBLIC_URL:-https://litellm.x570.${ROUTING_DOMAIN}}" +LANGFUSE_PUBLIC_URL="${LANGFUSE_PUBLIC_URL:-https://langfuse.x570.${ROUTING_DOMAIN}}" +LITELLM_ROOT_PATH="${LITELLM_ROOT_PATH:-}" +export PUBLIC_BASE_URL LOCAL_BASE_URL LITELLM_PUBLIC_URL LANGFUSE_PUBLIC_URL LITELLM_ROOT_PATH # Ensure openssl is installed if we need to generate passwords/keys @@ -529,7 +532,7 @@ if podman pod exists agent-router-pod 2>/dev/null; then fi render_pod_yaml() { - export WORKDIR HOME LITELLM_MASTER_KEY POSTGRES_PASSWORD NEXTAUTH_SECRET SALT ENCRYPTION_KEY LANGFUSE_INIT_USER_PASSWORD MINIO_ROOT_USER MINIO_ROOT_PASSWORD OLLAMA_API_KEY LANGFUSE_PUBLIC_KEY LANGFUSE_SECRET_KEY CLASSIFIER_INPUT_MAX_CHARS REDIS_AUTH CLICKHOUSE_PASSWORD PUBLIC_BASE_URL ROUTING_DOMAIN + export WORKDIR HOME LITELLM_MASTER_KEY POSTGRES_PASSWORD NEXTAUTH_SECRET SALT ENCRYPTION_KEY LANGFUSE_INIT_USER_PASSWORD MINIO_ROOT_USER MINIO_ROOT_PASSWORD OLLAMA_API_KEY LANGFUSE_PUBLIC_KEY LANGFUSE_SECRET_KEY CLASSIFIER_INPUT_MAX_CHARS REDIS_AUTH CLICKHOUSE_PASSWORD PUBLIC_BASE_URL ROUTING_DOMAIN LITELLM_PUBLIC_URL LANGFUSE_PUBLIC_URL LITELLM_ROOT_PATH python3 - "$WORKDIR/pod.yaml" <<'PY' import os, sys, urllib.parse, json uid = os.getuid() @@ -559,7 +562,9 @@ placeholders = [ "CLICKHOUSE_PASSWORD_PLACEHOLDER", "PROXY_BASE_URL_PLACEHOLDER", "PUBLIC_BASE_URL_PLACEHOLDER", - "ROUTING_DOMAIN_PLACEHOLDER" + "ROUTING_DOMAIN_PLACEHOLDER", + "NEXTAUTH_URL_PLACEHOLDER", + "SERVER_ROOT_PATH_PLACEHOLDER" ] for ph in placeholders: if ph not in text: @@ -584,10 +589,9 @@ text = text.replace("MINIO_PASSWORD_PLACEHOLDER", yaml_scalar(os.environ["MINIO_ text = text.replace("LANGFUSE_INIT_USER_PASSWORD_PLACEHOLDER", yaml_scalar(os.environ["LANGFUSE_INIT_USER_PASSWORD"])) text = text.replace("REDIS_AUTH_PLACEHOLDER", yaml_scalar(os.environ["REDIS_AUTH"])) text = text.replace("CLICKHOUSE_PASSWORD_PLACEHOLDER", yaml_scalar(os.environ["CLICKHOUSE_PASSWORD"])) -# Derive PROXY_BASE_URL from PUBLIC_BASE_URL -public_base_url = os.environ["PUBLIC_BASE_URL"].rstrip("/") -proxy_base_url = f"{public_base_url}/litellm" -text = text.replace("PROXY_BASE_URL_PLACEHOLDER", yaml_scalar(proxy_base_url)) +text = text.replace("PROXY_BASE_URL_PLACEHOLDER", yaml_scalar(os.environ["LITELLM_PUBLIC_URL"])) +text = text.replace("NEXTAUTH_URL_PLACEHOLDER", yaml_scalar(os.environ["LANGFUSE_PUBLIC_URL"])) +text = text.replace("SERVER_ROOT_PATH_PLACEHOLDER", yaml_scalar(os.environ["LITELLM_ROOT_PATH"])) text = text.replace("PUBLIC_BASE_URL_PLACEHOLDER", yaml_scalar(os.environ["PUBLIC_BASE_URL"])) text = text.replace("ROUTING_DOMAIN_PLACEHOLDER", yaml_scalar(os.environ["ROUTING_DOMAIN"])) import re