mirror of
https://github.com/ever-co/ever-gauzy.git
synced 2026-10-02 01:54:50 +08:00
* feat(config): add individual Redis connection environment variables - Add REDIS_HOST, REDIS_PORT, REDIS_USER, REDIS_PASSWORD to all env files - Support flexible Redis configuration alongside REDIS_URL - Allow connection via individual parameters or single URL * feat(docker): add Redis env vars to Dockerfiles - Add REDIS_ENABLED, REDIS_HOST, REDIS_PORT, REDIS_USER, REDIS_PASSWORD as build args and env vars - Update API, MCP, and MCP-Auth Dockerfiles - Enable flexible Redis configuration in containerized deployments * feat(k8s): add Redis env vars to Kubernetes manifests - Add REDIS_ENABLED, REDIS_HOST, REDIS_PORT, REDIS_USER, REDIS_PASSWORD to all k8s deployments - Update manifests for prod, stage, and demo environments - Support flexible Redis configuration in Kubernetes (Civo, CW, DO) - Apply to API, MCP, and MCP-Auth deployments * feat(deploy): add Redis env vars to Docker Compose templates - Add REDIS_ENABLED, REDIS_HOST, REDIS_PORT, REDIS_USER, REDIS_PASSWORD to compose templates - Update templates for Cloudflare and Let's Encrypt deployments - Apply to prod, stage, and demo environments - Enable flexible Redis configuration in SSH-based deployments * feat(ci): add Redis env vars to GitHub workflows - Add REDIS_ENABLED, REDIS_HOST, REDIS_PORT, REDIS_USER, REDIS_PASSWORD to deployment workflows - Update workflows for Civo, CW, and DigitalOcean deployments - Apply to API, MCP, and MCP-Auth deployment pipelines - Support flexible Redis configuration in CI/CD * feat(do): add Redis env vars to DigitalOcean App Platform config - Add REDIS_ENABLED, REDIS_HOST, REDIS_PORT, REDIS_USER, REDIS_PASSWORD to app.yaml - Enable flexible Redis configuration for DO App Platform deployments * add redis_tls
154 lines
5.3 KiB
YAML
154 lines
5.3 KiB
YAML
---
|
|
kind: Service
|
|
apiVersion: v1
|
|
metadata:
|
|
name: gauzy-mcp-stage-svc
|
|
spec:
|
|
type: ClusterIP
|
|
selector:
|
|
app: gauzy-mcp-stage
|
|
ports:
|
|
- name: http
|
|
protocol: TCP
|
|
port: 80
|
|
targetPort: 3001
|
|
- name: websocket
|
|
protocol: TCP
|
|
port: 3002
|
|
targetPort: 3002
|
|
|
|
---
|
|
apiVersion: apps/v1
|
|
kind: Deployment
|
|
metadata:
|
|
name: gauzy-mcp-stage
|
|
spec:
|
|
replicas: 1
|
|
selector:
|
|
matchLabels:
|
|
app: gauzy-mcp-stage
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app: gauzy-mcp-stage
|
|
spec:
|
|
containers:
|
|
- name: gauzy-stage-mcp
|
|
image: registry.digitalocean.com/ever/gauzy-mcp-stage:latest
|
|
env:
|
|
# MCP Server Configuration
|
|
- name: MCP_TRANSPORT
|
|
value: $MCP_TRANSPORT
|
|
- name: MCP_SERVER_MODE
|
|
value: $MCP_SERVER_MODE
|
|
- name: MCP_HTTP_PORT
|
|
value: $MCP_HTTP_PORT
|
|
- name: MCP_HTTP_HOST
|
|
value: $MCP_HTTP_HOST
|
|
- name: MCP_WS_PORT
|
|
value: $MCP_WS_PORT
|
|
- name: MCP_WS_HOST
|
|
value: $MCP_WS_HOST
|
|
|
|
# Security and CORS
|
|
- name: MCP_CORS_ORIGIN
|
|
value: $MCP_CORS_ORIGIN
|
|
- name: MCP_CORS_CREDENTIALS
|
|
value: $MCP_CORS_CREDENTIALS
|
|
|
|
# OAuth 2.0 Authorization
|
|
- name: MCP_AUTH_ENABLED
|
|
value: $MCP_AUTH_ENABLED
|
|
- name: MCP_AUTH_RESOURCE_URI
|
|
value: $MCP_AUTH_RESOURCE_URI
|
|
- name: MCP_AUTH_REQUIRED_SCOPES
|
|
value: $MCP_AUTH_REQUIRED_SCOPES
|
|
- name: MCP_AUTH_SERVERS
|
|
value: '$MCP_AUTH_SERVERS'
|
|
- name: MCP_AUTH_JWT_AUDIENCE
|
|
value: $MCP_AUTH_JWT_AUDIENCE
|
|
- name: MCP_AUTH_JWT_ISSUER
|
|
value: $MCP_AUTH_JWT_ISSUER
|
|
- name: MCP_AUTH_JWT_ALGORITHMS
|
|
value: $MCP_AUTH_JWT_ALGORITHMS
|
|
- name: MCP_AUTH_JWT_JWKS_URI
|
|
value: $MCP_AUTH_JWT_JWKS_URI
|
|
- name: MCP_AUTH_TOKEN_CACHE_TTL
|
|
value: $MCP_AUTH_TOKEN_CACHE_TTL
|
|
- name: MCP_AUTH_METADATA_CACHE_TTL
|
|
value: $MCP_AUTH_METADATA_CACHE_TTL
|
|
|
|
# Session Management
|
|
- name: MCP_SESSION_ENABLED
|
|
value: $MCP_SESSION_ENABLED
|
|
- name: MCP_SESSION_COOKIE_NAME
|
|
value: $MCP_SESSION_COOKIE_NAME
|
|
- name: MCP_SESSION_TTL
|
|
value: $MCP_SESSION_TTL
|
|
- name: MCP_AUTH_SESSION_SECRET
|
|
value: $MCP_AUTH_SESSION_SECRET
|
|
|
|
# Rate Limiting
|
|
- name: THROTTLE_ENABLED
|
|
value: $THROTTLE_ENABLED
|
|
- name: THROTTLE_TTL
|
|
value: $THROTTLE_TTL
|
|
- name: THROTTLE_LIMIT
|
|
value: $THROTTLE_LIMIT
|
|
|
|
# Gauzy API Integration
|
|
- name: API_BASE_URL
|
|
value: $API_BASE_URL
|
|
- name: GAUZY_AUTO_LOGIN
|
|
value: $GAUZY_AUTO_LOGIN
|
|
- name: REDIS_ENABLED
|
|
value: '$REDIS_ENABLED'
|
|
- name: REDIS_URL
|
|
value: '$REDIS_URL'
|
|
- name: REDIS_HOST
|
|
value: '$REDIS_HOST'
|
|
- name: REDIS_PASSWORD
|
|
value: '$REDIS_PASSWORD'
|
|
- name: REDIS_PORT
|
|
value: '$REDIS_PORT'
|
|
- name: REDIS_USER
|
|
value: '$REDIS_USER'
|
|
- name: REDIS_TLS
|
|
value: '$REDIS_TLS'
|
|
|
|
ports:
|
|
- containerPort: 3001
|
|
protocol: TCP
|
|
name: http
|
|
- containerPort: 3002
|
|
protocol: TCP
|
|
name: websocket
|
|
|
|
---
|
|
apiVersion: networking.k8s.io/v1
|
|
kind: Ingress
|
|
metadata:
|
|
name: gauzy-mcp-stage-ing
|
|
namespace: default
|
|
annotations:
|
|
nginx.ingress.kubernetes.io/force-ssl-redirect: 'true'
|
|
nginx.ingress.kubernetes.io/proxy-send-timeout: '3600'
|
|
nginx.ingress.kubernetes.io/proxy-read-timeout: '3600'
|
|
spec:
|
|
ingressClassName: nginx
|
|
rules:
|
|
- host: mcpstage.gauzy.co
|
|
http:
|
|
paths:
|
|
- backend:
|
|
service:
|
|
name: gauzy-mcp-stage-svc
|
|
port:
|
|
number: 80
|
|
path: /
|
|
pathType: Prefix
|
|
tls:
|
|
- hosts:
|
|
- mcpstage.gauzy.co
|
|
secretName: mcp.gauzy.co-tls
|