final attempt before I give up for today

This commit is contained in:
ION606
2025-09-13 22:13:34 -04:00
parent 2c538a1cf9
commit bf98e2055e
6 changed files with 128 additions and 124 deletions
+30 -29
View File
@@ -1,39 +1,40 @@
image: image:
repository: ghcr.io/open-webui/open-webui repository: ghcr.io/open-webui/open-webui
tag: "main" tag: "main"
pullPolicy: IfNotPresent pullPolicy: IfNotPresent
service: service:
type: ClusterIP # use Ingress for external access type: NodePort # use NodePort instead of ClusterIP so openwebui is accessible externally
nodePort: 30400
persistence: persistence:
enabled: true enabled: true
size: 5Gi size: 5Gi
ingress: ingress:
enabled: true # expose via nginx ingress enabled: false # disable ingress since we'll use NodePort
className: nginx className: nginx
hosts: hosts:
- host: openwebui.local - host: openwebui.local
paths: paths:
- path: / - path: /
pathType: Prefix pathType: Prefix
tls: [] # no https for local/minikube tls: [] # no https for local/minikube
# NO SECRETS!!! # NO SECRETS!!!
extraEnvVars: extraEnvVars:
- name: OLLAMA_BASE_URL - name: OLLAMA_BASE_URL
value: "https://mlep.ion606.com" value: "https://mlep.ion606.com"
# postgres === primary db # postgres === primary db
- name: DATABASE_URL - name: DATABASE_URL
value: "postgresql://postgres:mypassword@postgresql-primary.ai.svc.cluster.local:5432/openwebui" value: "postgresql://postgres:mypassword@postgresql-primary.ai.svc.cluster.local:5432/openwebui"
# store vectors in pgvector (on the same postgres) # store vectors in pgvector (on the same postgres)
- name: VECTOR_DB - name: VECTOR_DB
value: "pgvector" value: "pgvector"
- name: PGVECTOR_DB_URL - name: PGVECTOR_DB_URL
value: "postgresql://postgres:mypassword@postgresql-primary.ai.svc.cluster.local:5432/openwebui" value: "postgresql://postgres:mypassword@postgresql-primary.ai.svc.cluster.local:5432/openwebui"
- name: PGVECTOR_CREATE_EXTENSION - name: PGVECTOR_CREATE_EXTENSION
value: "true" value: "true"
# no bish # no bish
# - name: WEBUI_URL # - name: WEBUI_URL
# value: "http://openwebui.local" # value: "http://openwebui.local"
+15 -14
View File
@@ -1,20 +1,21 @@
image: image:
repository: searxng/searxng repository: searxng/searxng
tag: "latest" tag: "latest"
service: service:
type: NodePort # or ClusterIP if using ingress type: NodePort # expose service externally
# nodePort: 30081 nodePort: 30081
ingress: ingress:
enabled: false enabled: false
className: nginx className: nginx
hosts: hosts:
- host: searxng.local - host: searxng.local
paths: paths:
- path: / - path: /
pathType: Prefix pathType: Prefix
# env: # env:
# SEARXNG_SECRET: "please-change-me" # SEARXNG_SECRET: "please-change-me"
# # helps with URL generation & results links # # helps with URL generation & results links
# BASE_URL: "http://searxng.local/" # BASE_URL: "http://searxng.local/"
+30 -31
View File
@@ -2,39 +2,38 @@ apiVersion: apps/v1
kind: Deployment kind: Deployment
metadata: { name: browser, namespace: ai } metadata: { name: browser, namespace: ai }
spec: spec:
replicas: 1 replicas: 1
selector: { matchLabels: { app: browser } } selector: { matchLabels: { app: browser } }
template: template:
metadata: { labels: { app: browser } } metadata: { labels: { app: browser } }
spec: spec:
containers: containers:
- name: browser - name: browser
image: docker.io/ion606/browser:latest image: docker.io/ion606/browser:latest
ports: [{ containerPort: 7788 }] ports: [{ containerPort: 7788 }]
env: env:
- { name: WEBUI_IP, value: "0.0.0.0" } - { name: WEBUI_IP, value: "0.0.0.0" }
- { name: WEBUI_PORT, value: "7788" } - { name: WEBUI_PORT, value: "7788" }
resources: resources:
requests: { cpu: "250m", memory: "256Mi" } requests: { cpu: "250m", memory: "256Mi" }
limits: { cpu: "1", memory: "1Gi" } # hard cap limits: { cpu: "1", memory: "1Gi" } # hard cap
readinessProbe: readinessProbe:
{ httpGet: { path: "/", port: 7788 }
httpGet: { path: "/", port: 7788 }, initialDelaySeconds: 5
initialDelaySeconds: 5, periodSeconds: 10
periodSeconds: 10, livenessProbe:
} httpGet: { path: "/", port: 7788 }
livenessProbe: initialDelaySeconds: 15
{ periodSeconds: 20
httpGet: { path: "/", port: 7788 },
initialDelaySeconds: 15,
periodSeconds: 20,
}
--- ---
apiVersion: v1 apiVersion: v1
kind: Service kind: Service
metadata: { name: browser, namespace: ai } metadata: { name: browser, namespace: ai }
spec: spec:
selector: { app: browser } selector: { app: browser }
ports: [{ name: http, port: 7788, targetPort: 7788 }] ports:
type: ClusterIP - name: http
port: 7788
targetPort: 7788
nodePort: 30788
type: NodePort
+16 -17
View File
@@ -14,23 +14,18 @@ spec:
ports: [{ containerPort: 8787 }] ports: [{ containerPort: 8787 }]
env: env:
- { name: PORT, value: "8787" } - { name: PORT, value: "8787" }
- { - name: NAMESPACE
name: NAMESPACE, valueFrom:
valueFrom: fieldRef:
{ fieldRef: { fieldPath: metadata.namespace } }, fieldPath: metadata.namespace
}
readinessProbe: readinessProbe:
{ httpGet: { path: "/openapi.json", port: 8787 }
httpGet: { path: "/openapi.json", port: 8787 }, initialDelaySeconds: 5
initialDelaySeconds: 5, periodSeconds: 10
periodSeconds: 10,
}
livenessProbe: livenessProbe:
{ httpGet: { path: "/openapi.json", port: 8787 }
httpGet: { path: "/openapi.json", port: 8787 }, initialDelaySeconds: 15
initialDelaySeconds: 15, periodSeconds: 20
periodSeconds: 20,
}
resources: resources:
requests: { cpu: "100m", memory: "128Mi" } requests: { cpu: "100m", memory: "128Mi" }
limits: { cpu: "500m", memory: "512Mi" } limits: { cpu: "500m", memory: "512Mi" }
@@ -40,5 +35,9 @@ kind: Service
metadata: { name: coderunner, namespace: ai } metadata: { name: coderunner, namespace: ai }
spec: spec:
selector: { app: coderunner } selector: { app: coderunner }
ports: [{ name: http, port: 8787, targetPort: 8787 }] ports:
type: ClusterIP - name: http
port: 8787
targetPort: 8787
nodePort: 31787
type: NodePort
+9 -7
View File
@@ -20,12 +20,10 @@ spec:
- { name: OLLAMA_CHAT_MODEL, value: "llama3.1" } - { name: OLLAMA_CHAT_MODEL, value: "llama3.1" }
- { name: OLLAMA_EMBED_MODEL, value: "nomic-embed-text" } - { name: OLLAMA_EMBED_MODEL, value: "nomic-embed-text" }
readinessProbe: readinessProbe:
{ httpGet: { path: "/openapi.json", port: 8788 } } httpGet: { path: "/openapi.json", port: 8788 }
livenessProbe: livenessProbe:
{ httpGet: { path: "/", port: 8788 }
httpGet: { path: "/", port: 8788 }, initialDelaySeconds: 10
initialDelaySeconds: 10,
}
resources: resources:
requests: { cpu: "200m", memory: "256Mi" } requests: { cpu: "200m", memory: "256Mi" }
limits: { cpu: "1", memory: "1Gi" } limits: { cpu: "1", memory: "1Gi" }
@@ -35,5 +33,9 @@ kind: Service
metadata: { name: rag-server, namespace: ai } metadata: { name: rag-server, namespace: ai }
spec: spec:
selector: { app: rag-server } selector: { app: rag-server }
ports: [{ name: http, port: 8788, targetPort: 8788 }] ports:
type: ClusterIP - name: http
port: 8788
targetPort: 8788
nodePort: 31788
type: NodePort
+28 -26
View File
@@ -2,34 +2,36 @@ apiVersion: apps/v1
kind: Deployment kind: Deployment
metadata: { name: tools, namespace: ai } metadata: { name: tools, namespace: ai }
spec: spec:
replicas: 1 replicas: 1
selector: { matchLabels: { app: tools } } selector: { matchLabels: { app: tools } }
template: template:
metadata: { labels: { app: tools } } metadata: { labels: { app: tools } }
spec: spec:
containers: containers:
- name: tools - name: tools
image: docker.io/ion606/tools:latest image: docker.io/ion606/tools:latest
ports: [{ containerPort: 1331 }] ports: [{ containerPort: 1331 }]
env: env:
- { name: HOST, value: "0.0.0.0" } - { name: HOST, value: "0.0.0.0" }
- { name: PORT, value: "1331" } - { name: PORT, value: "1331" }
- { name: ROKU_IP, value: "192.0.2.10" } - { name: ROKU_IP, value: "192.0.2.10" }
readinessProbe: readinessProbe:
{ httpGet: { path: "/roku/openapi.json", port: 1331 } } httpGet: { path: "/roku/openapi.json", port: 1331 }
livenessProbe: livenessProbe:
{ httpGet: { path: "/roku/openapi.json", port: 1331 }
httpGet: { path: "/roku/openapi.json", port: 1331 }, initialDelaySeconds: 10
initialDelaySeconds: 10, resources:
} requests: { cpu: "100m", memory: "128Mi" }
resources: limits: { cpu: "500m", memory: "512Mi" }
requests: { cpu: "100m", memory: "128Mi" }
limits: { cpu: "500m", memory: "512Mi" }
--- ---
apiVersion: v1 apiVersion: v1
kind: Service kind: Service
metadata: { name: tools, namespace: ai } metadata: { name: tools, namespace: ai }
spec: spec:
selector: { app: tools } selector: { app: tools }
ports: [{ name: http, port: 1331, targetPort: 1331 }] ports:
type: ClusterIP - name: http
port: 1331
targetPort: 1331
nodePort: 31331
type: NodePort