first commit
This commit is contained in:
77
examples/configs/withnginxreverseproxy/README.md
Normal file
77
examples/configs/withnginxreverseproxy/README.md
Normal file
@@ -0,0 +1,77 @@
|
||||
# Bifrost behind NGINX (Docker Compose)
|
||||
|
||||
This example runs 3 Bifrost containers behind an NGINX reverse proxy.
|
||||
|
||||
## Files
|
||||
|
||||
- `docker-compose.yml` - Starts NGINX and 3 Bifrost nodes
|
||||
- `nginx.conf` - Reverse proxy and load balancing config
|
||||
- `config.json` - Shared Bifrost config for all nodes
|
||||
- `.env.example` - Required environment variables
|
||||
- `helm-values.yaml` - Helm values for Kubernetes + NGINX Ingress
|
||||
- `k8s-ingress.yaml` - Standalone ingress manifest (non-Helm or override)
|
||||
|
||||
## Run
|
||||
|
||||
```bash
|
||||
cd examples/configs/withnginxreverseproxy
|
||||
cp .env.example .env
|
||||
# Edit .env and set real values
|
||||
|
||||
docker compose config
|
||||
docker compose up -d
|
||||
docker compose ps
|
||||
```
|
||||
|
||||
NGINX exposes Bifrost on `http://localhost:8080`.
|
||||
|
||||
## Verify
|
||||
|
||||
```bash
|
||||
# Health through NGINX
|
||||
curl -i http://localhost:8080/health
|
||||
|
||||
# Chat completion through NGINX
|
||||
curl -sS http://localhost:8080/v1/chat/completions \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{
|
||||
"model": "gpt-4o-mini",
|
||||
"messages": [{"role": "user", "content": "Say hello"}]
|
||||
}'
|
||||
```
|
||||
|
||||
Streaming check:
|
||||
|
||||
```bash
|
||||
curl -N http://localhost:8080/v1/chat/completions \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{
|
||||
"model": "gpt-4o-mini",
|
||||
"stream": true,
|
||||
"messages": [{"role": "user", "content": "stream test"}]
|
||||
}'
|
||||
```
|
||||
|
||||
## Stop
|
||||
|
||||
```bash
|
||||
docker compose down
|
||||
```
|
||||
|
||||
## Kubernetes / Helm
|
||||
|
||||
```bash
|
||||
# Render manifests and verify ingress is present
|
||||
helm template bifrost ./helm-charts/bifrost \
|
||||
-f examples/configs/withnginxreverseproxy/helm-values.yaml
|
||||
|
||||
# Install (or upgrade) with this example
|
||||
helm upgrade --install bifrost ./helm-charts/bifrost \
|
||||
-f examples/configs/withnginxreverseproxy/helm-values.yaml
|
||||
```
|
||||
|
||||
Validate ingress manifest only:
|
||||
|
||||
```bash
|
||||
kubectl apply --dry-run=client -f examples/configs/withnginxreverseproxy/k8s-ingress.yaml
|
||||
```
|
||||
Reference in New Issue
Block a user