mirror of
https://github.com/danny-avila/LibreChat.git
synced 2025-12-18 17:30:16 +01:00
This PR adds DNS configuration support to the LibreChat Helm chart, enabling users to redirect traffic to proxy servers or use custom DNS settings.
## What's Changed
- Added dnsPolicy and dnsConfig fields to deployment.yaml template
- Added DNS configuration options to values.yaml with comprehensive examples
- Created documentation and example configurations
## Use Cases
- Redirect AI service traffic (AWS Bedrock, OpenAI, etc.) to proxy servers
- Use corporate DNS servers for name resolution
- Control traffic routing through custom DNS configurations
- Enforce traffic through security gateways
## Configuration Example
```yaml
dnsPolicy: "None"
dnsConfig:
nameservers:
- "10.0.0.10" # Custom DNS server for redirections
searches:
- "svc.cluster.local"
options:
- name: ndots
value: "2"
```
## Testing Results
✅ Successfully tested with Docker Compose environment
✅ DNS resolution correctly redirects to configured IPs
✅ HTTP requests properly routed to proxy servers
✅ Tested with multiple domains (AWS Bedrock, OpenAI, SageMaker)
Test output:
- bedrock-runtime.us-east-1.amazonaws.com -> 172.25.0.10 ✓
- api.openai.com -> 172.25.0.10 ✓
- sagemaker-runtime.us-east-1.amazonaws.com -> 172.25.0.10 ✓
All DNS redirects working correctly with proxy server receiving traffic.
## Documentation
- Added comprehensive DNS_CONFIGURATION.md guide
- Included examples for common use cases
- Provided troubleshooting steps
## Backward Compatibility
This change is fully backward compatible. If dnsPolicy and dnsConfig are not specified, the default Kubernetes DNS behavior is maintained.
Fixes #[issue_number]
Co-authored-by: LibreChat User <user@example.com>
43 lines
No EOL
1.2 KiB
YAML
43 lines
No EOL
1.2 KiB
YAML
# DNS Configuration Examples for LibreChat Helm Chart
|
|
# This file demonstrates how to configure custom DNS settings for traffic redirection
|
|
|
|
# Example 1: Redirect AWS Bedrock traffic to a proxy server
|
|
dnsPolicy: "None" # Ignore cluster DNS, use only custom DNS
|
|
dnsConfig:
|
|
nameservers:
|
|
- "10.0.0.10" # Your custom DNS server that handles redirections
|
|
- "8.8.8.8" # Fallback to Google DNS for other domains
|
|
searches:
|
|
- "svc.cluster.local"
|
|
- "cluster.local"
|
|
options:
|
|
- name: ndots
|
|
value: "2"
|
|
|
|
---
|
|
|
|
# Example 2: Use corporate DNS server
|
|
dnsPolicy: "None"
|
|
dnsConfig:
|
|
nameservers:
|
|
- "192.168.1.53" # Corporate DNS server
|
|
- "192.168.1.54" # Backup DNS server
|
|
|
|
---
|
|
|
|
# Example 3: Combine with hostAliases for simple redirects
|
|
dnsPolicy: "ClusterFirst" # Use cluster DNS first
|
|
dnsConfig:
|
|
options:
|
|
- name: timeout
|
|
value: "1"
|
|
- name: attempts
|
|
value: "2"
|
|
|
|
# Note: For simple host-to-IP mappings, you can also use hostAliases
|
|
# in combination with DNS configuration (add this to deployment spec):
|
|
# hostAliases:
|
|
# - ip: "10.100.50.200"
|
|
# hostnames:
|
|
# - "bedrock-runtime.us-east-1.amazonaws.com"
|
|
# - "api.openai.com" |