mirror of
https://github.com/open-webui/helm-charts
synced 2025-06-09 08:07:00 +00:00
separate openwebui from ollama chart
This commit is contained in:
parent
725043ee13
commit
aa04934217
4
.github/workflows/helm-release.yml
vendored
4
.github/workflows/helm-release.yml
vendored
@ -26,6 +26,10 @@ jobs:
|
|||||||
env:
|
env:
|
||||||
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
|
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
|
||||||
|
|
||||||
|
- name: Add Dependency Repos
|
||||||
|
run: |
|
||||||
|
helm repo add ollama https://otwld.github.io/ollama-helm/
|
||||||
|
|
||||||
- name: Run chart-releaser
|
- name: Run chart-releaser
|
||||||
uses: helm/chart-releaser-action@v1.6.0
|
uses: helm/chart-releaser-action@v1.6.0
|
||||||
with:
|
with:
|
||||||
|
6
charts/open-webui/Chart.lock
Normal file
6
charts/open-webui/Chart.lock
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
dependencies:
|
||||||
|
- name: ollama
|
||||||
|
repository: https://otwld.github.io/ollama-helm/
|
||||||
|
version: 0.24.1
|
||||||
|
digest: sha256:5f063bf2874fa7bbf38c3eb34094301f3a818cc13c0eeffb010dd09a42f0371d
|
||||||
|
generated: "2024-05-07T12:10:01.451609-07:00"
|
@ -1,6 +1,6 @@
|
|||||||
apiVersion: v2
|
apiVersion: v2
|
||||||
name: open-webui
|
name: open-webui
|
||||||
version: 1.0.1
|
version: 2.0.0
|
||||||
appVersion: "latest"
|
appVersion: "latest"
|
||||||
|
|
||||||
home: https://www.openwebui.com/
|
home: https://www.openwebui.com/
|
||||||
@ -14,8 +14,15 @@ keywords:
|
|||||||
|
|
||||||
sources:
|
sources:
|
||||||
- https://github.com/open-webui/helm-charts
|
- https://github.com/open-webui/helm-charts
|
||||||
- https://hub.docker.com/r/ollama/ollama
|
|
||||||
- https://github.com/open-webui/open-webui/pkgs/container/open-webui
|
- https://github.com/open-webui/open-webui/pkgs/container/open-webui
|
||||||
|
- https://github.com/otwld/ollama-helm/
|
||||||
|
- https://hub.docker.com/r/ollama/ollama
|
||||||
|
|
||||||
annotations:
|
annotations:
|
||||||
licenses: MIT
|
licenses: MIT
|
||||||
|
|
||||||
|
dependencies:
|
||||||
|
- name: ollama
|
||||||
|
repository: https://otwld.github.io/ollama-helm/
|
||||||
|
version: ">=0.24.0"
|
||||||
|
condition: ollama.enabled
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
# open-webui
|
# open-webui
|
||||||
|
|
||||||
 
|
 
|
||||||
|
|
||||||
Open WebUI: A User-Friendly Web Interface for Chat Interactions 👋
|
Open WebUI: A User-Friendly Web Interface for Chat Interactions 👋
|
||||||
|
|
||||||
@ -8,7 +8,7 @@ Open WebUI: A User-Friendly Web Interface for Chat Interactions 👋
|
|||||||
|
|
||||||
## Source Code
|
## Source Code
|
||||||
|
|
||||||
* <https://github.com/open-webui/open-webui/tree/main/kubernetes/helm>
|
* <https://github.com/open-webui/helm-charts>
|
||||||
* <https://hub.docker.com/r/ollama/ollama>
|
* <https://hub.docker.com/r/ollama/ollama>
|
||||||
* <https://github.com/open-webui/open-webui/pkgs/container/open-webui>
|
* <https://github.com/open-webui/open-webui/pkgs/container/open-webui>
|
||||||
|
|
||||||
@ -31,61 +31,37 @@ helm upgrade --install open-webui open-webui/open-webui
|
|||||||
|
|
||||||
| Key | Type | Default | Description |
|
| Key | Type | Default | Description |
|
||||||
|-----|------|---------|-------------|
|
|-----|------|---------|-------------|
|
||||||
|
| annotations | object | `{}` | |
|
||||||
|
| image.pullPolicy | string | `"Always"` | |
|
||||||
|
| image.repository | string | `"ghcr.io/open-webui/open-webui"` | |
|
||||||
|
| image.tag | string | `""` | |
|
||||||
|
| ingress.annotations | object | `{}` | Use appropriate annotations for your Ingress controller, e.g., for NGINX: nginx.ingress.kubernetes.io/rewrite-target: / |
|
||||||
|
| ingress.class | string | `""` | |
|
||||||
|
| ingress.enabled | bool | `false` | |
|
||||||
|
| ingress.existingSecret | string | `""` | |
|
||||||
|
| ingress.host | string | `""` | |
|
||||||
|
| ingress.tls | bool | `false` | |
|
||||||
| nameOverride | string | `""` | |
|
| nameOverride | string | `""` | |
|
||||||
| ollama.annotations | object | `{}` | |
|
| nodeSelector | object | `{}` | |
|
||||||
| ollama.externalHost | string | `""` | |
|
| ollama.enabled | bool | `false` | Automatically install Ollama Helm chart from https://otwld.github.io/ollama-helm/. Use [Helm Values](https://github.com/otwld/ollama-helm/#helm-values) to configure |
|
||||||
| ollama.gpu.enabled | bool | `false` | Enable additional ENV values to help Ollama discover GPU usage |
|
| persistence.accessModes | list | `["ReadWriteOnce"]` | If using multiple replicas, you must update accessModes to ReadWriteMany |
|
||||||
| ollama.image.pullPolicy | string | `"Always"` | |
|
| persistence.annotations | object | `{}` | |
|
||||||
| ollama.image.repository | string | `"ollama/ollama"` | |
|
| persistence.enabled | bool | `true` | |
|
||||||
| ollama.image.tag | string | `"latest"` | |
|
| persistence.existingClaim | string | `""` | |
|
||||||
| ollama.nodeSelector | object | `{}` | |
|
| persistence.selector | object | `{}` | |
|
||||||
| ollama.persistence.accessModes[0] | string | `"ReadWriteOnce"` | |
|
| persistence.size | string | `"2Gi"` | |
|
||||||
| ollama.persistence.annotations | object | `{}` | |
|
| persistence.storageClass | string | `""` | |
|
||||||
| ollama.persistence.enabled | bool | `true` | |
|
| podAnnotations | object | `{}` | |
|
||||||
| ollama.persistence.existingClaim | string | `""` | |
|
| replicaCount | int | `1` | |
|
||||||
| ollama.persistence.selector | object | `{}` | |
|
| resources | object | `{}` | |
|
||||||
| ollama.persistence.size | string | `"30Gi"` | |
|
| service.annotations | object | `{}` | |
|
||||||
| ollama.persistence.storageClass | string | `""` | |
|
| service.containerPort | int | `8080` | |
|
||||||
| ollama.podAnnotations | object | `{}` | |
|
| service.labels | object | `{}` | |
|
||||||
| ollama.replicaCount | int | `1` | |
|
| service.loadBalancerClass | string | `""` | |
|
||||||
| ollama.resources | object | `{}` | |
|
| service.nodePort | string | `""` | |
|
||||||
| ollama.runtimeClassName | string | `""` | If using a special runtime container such as nvidia, set it here. |
|
| service.port | int | `80` | |
|
||||||
| ollama.service.annotations | object | `{}` | |
|
| service.type | string | `"ClusterIP"` | |
|
||||||
| ollama.service.containerPort | int | `11434` | |
|
| tolerations | list | `[]` | |
|
||||||
| ollama.service.port | int | `80` | |
|
|
||||||
| ollama.service.type | string | `"ClusterIP"` | |
|
|
||||||
| ollama.tolerations[0].effect | string | `"NoSchedule"` | |
|
|
||||||
| ollama.tolerations[0].key | string | `"nvidia.com/gpu"` | |
|
|
||||||
| ollama.tolerations[0].operator | string | `"Exists"` | |
|
|
||||||
| webui.annotations | object | `{}` | |
|
|
||||||
| webui.image.pullPolicy | string | `"Always"` | |
|
|
||||||
| webui.image.repository | string | `"ghcr.io/open-webui/open-webui"` | |
|
|
||||||
| webui.image.tag | string | `""` | |
|
|
||||||
| webui.ingress.annotations | object | `{}` | Use appropriate annotations for your Ingress controller, e.g., for NGINX: nginx.ingress.kubernetes.io/rewrite-target: / |
|
|
||||||
| webui.ingress.class | string | `""` | |
|
|
||||||
| webui.ingress.enabled | bool | `false` | |
|
|
||||||
| webui.ingress.existingSecret | string | `""` | |
|
|
||||||
| webui.ingress.host | string | `""` | |
|
|
||||||
| webui.ingress.tls | bool | `false` | |
|
|
||||||
| webui.nodeSelector | object | `{}` | |
|
|
||||||
| webui.persistence.accessModes | list | `["ReadWriteOnce"]` | If using multiple replicas, you must update accessModes to ReadWriteMany |
|
|
||||||
| webui.persistence.annotations | object | `{}` | |
|
|
||||||
| webui.persistence.enabled | bool | `true` | |
|
|
||||||
| webui.persistence.existingClaim | string | `""` | |
|
|
||||||
| webui.persistence.selector | object | `{}` | |
|
|
||||||
| webui.persistence.size | string | `"2Gi"` | |
|
|
||||||
| webui.persistence.storageClass | string | `""` | |
|
|
||||||
| webui.podAnnotations | object | `{}` | |
|
|
||||||
| webui.replicaCount | int | `1` | |
|
|
||||||
| webui.resources | object | `{}` | |
|
|
||||||
| webui.service.annotations | object | `{}` | |
|
|
||||||
| webui.service.containerPort | int | `8080` | |
|
|
||||||
| webui.service.labels | object | `{}` | |
|
|
||||||
| webui.service.loadBalancerClass | string | `""` | |
|
|
||||||
| webui.service.nodePort | string | `""` | |
|
|
||||||
| webui.service.port | int | `80` | |
|
|
||||||
| webui.service.type | string | `"ClusterIP"` | |
|
|
||||||
| webui.tolerations | list | `[]` | |
|
|
||||||
|
|
||||||
----------------------------------------------
|
----------------------------------------------
|
||||||
|
|
||||||
|
BIN
charts/open-webui/charts/ollama-0.24.1.tgz
Normal file
BIN
charts/open-webui/charts/ollama-0.24.1.tgz
Normal file
Binary file not shown.
@ -1,14 +1,13 @@
|
|||||||
{{- define "open-webui.name" -}}
|
{{- define "open-webui.name" -}}
|
||||||
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
|
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
{{- define "ollama.name" -}}
|
{{- define "ollama.name" -}}
|
||||||
ollama
|
ollama
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
{{- define "ollama.url" -}}
|
{{- define "ollama.url" -}}
|
||||||
{{- if .Values.ollama.externalHost }}
|
{{- if .Values.ollama.externalHost }}
|
||||||
{{- printf .Values.ollama.externalHost }}
|
{{- printf .Values.externalHost }}
|
||||||
{{- else }}
|
{{- else }}
|
||||||
{{- printf "http://%s.%s.svc.cluster.local:%d" (include "ollama.name" .) (.Release.Namespace) (.Values.ollama.service.port | int) }}
|
{{- printf "http://%s.%s.svc.cluster.local:%d" (include "ollama.name" .) (.Release.Namespace) (.Values.ollama.service.port | int) }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
@ -4,12 +4,12 @@ metadata:
|
|||||||
name: {{ include "open-webui.name" . }}
|
name: {{ include "open-webui.name" . }}
|
||||||
labels:
|
labels:
|
||||||
{{- include "open-webui.labels" . | nindent 4 }}
|
{{- include "open-webui.labels" . | nindent 4 }}
|
||||||
{{- with .Values.webui.annotations }}
|
{{- with .Values.annotations }}
|
||||||
annotations:
|
annotations:
|
||||||
{{- toYaml . | nindent 4 }}
|
{{- toYaml . | nindent 4 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
spec:
|
spec:
|
||||||
replicas: {{ .Values.webui.replicaCount }}
|
replicas: {{ .Values.replicaCount }}
|
||||||
selector:
|
selector:
|
||||||
matchLabels:
|
matchLabels:
|
||||||
{{- include "open-webui.selectorLabels" . | nindent 6 }}
|
{{- include "open-webui.selectorLabels" . | nindent 6 }}
|
||||||
@ -17,7 +17,7 @@ spec:
|
|||||||
metadata:
|
metadata:
|
||||||
labels:
|
labels:
|
||||||
{{- include "open-webui.labels" . | nindent 8 }}
|
{{- include "open-webui.labels" . | nindent 8 }}
|
||||||
{{- with .Values.webui.podAnnotations }}
|
{{- with .Values.podAnnotations }}
|
||||||
annotations:
|
annotations:
|
||||||
{{- toYaml . | nindent 8 }}
|
{{- toYaml . | nindent 8 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
@ -26,14 +26,14 @@ spec:
|
|||||||
automountServiceAccountToken: false
|
automountServiceAccountToken: false
|
||||||
containers:
|
containers:
|
||||||
- name: {{ .Chart.Name }}
|
- name: {{ .Chart.Name }}
|
||||||
{{- with .Values.webui.image }}
|
{{- with .Values.image }}
|
||||||
image: {{ .repository }}:{{ .tag | default $.Chart.AppVersion }}
|
image: {{ .repository }}:{{ .tag | default $.Chart.AppVersion }}
|
||||||
imagePullPolicy: {{ .pullPolicy }}
|
imagePullPolicy: {{ .pullPolicy }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
ports:
|
ports:
|
||||||
- name: http
|
- name: http
|
||||||
containerPort: {{ .Values.webui.service.containerPort }}
|
containerPort: {{ .Values.service.containerPort }}
|
||||||
{{- with .Values.webui.resources }}
|
{{- with .Values.resources }}
|
||||||
resources: {{- toYaml . | nindent 10 }}
|
resources: {{- toYaml . | nindent 10 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
volumeMounts:
|
volumeMounts:
|
||||||
@ -43,19 +43,19 @@ spec:
|
|||||||
- name: OLLAMA_BASE_URL
|
- name: OLLAMA_BASE_URL
|
||||||
value: {{ include "ollama.url" . | quote }}
|
value: {{ include "ollama.url" . | quote }}
|
||||||
tty: true
|
tty: true
|
||||||
{{- with .Values.webui.nodeSelector }}
|
{{- with .Values.nodeSelector }}
|
||||||
nodeSelector:
|
nodeSelector:
|
||||||
{{- toYaml . | nindent 8 }}
|
{{- toYaml . | nindent 8 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
volumes:
|
volumes:
|
||||||
{{- if and .Values.webui.persistence.enabled .Values.webui.persistence.existingClaim }}
|
{{- if and .Values.persistence.enabled .Values.persistence.existingClaim }}
|
||||||
- name: data
|
- name: data
|
||||||
persistentVolumeClaim:
|
persistentVolumeClaim:
|
||||||
claimName: {{ .Values.webui.persistence.existingClaim }}
|
claimName: {{ .Values.persistence.existingClaim }}
|
||||||
{{- else if not .Values.webui.persistence.enabled }}
|
{{- else if not .Values.persistence.enabled }}
|
||||||
- name: data
|
- name: data
|
||||||
emptyDir: {}
|
emptyDir: {}
|
||||||
{{- else if and .Values.webui.persistence.enabled (not .Values.webui.persistence.existingClaim) }}
|
{{- else if and .Values.persistence.enabled (not .Values.persistence.existingClaim) }}
|
||||||
- name: data
|
- name: data
|
||||||
persistentVolumeClaim:
|
persistentVolumeClaim:
|
||||||
claimName: {{ include "open-webui.name" . }}
|
claimName: {{ include "open-webui.name" . }}
|
@ -1,26 +1,26 @@
|
|||||||
{{- if .Values.webui.ingress.enabled }}
|
{{- if .Values.ingress.enabled }}
|
||||||
apiVersion: networking.k8s.io/v1
|
apiVersion: networking.k8s.io/v1
|
||||||
kind: Ingress
|
kind: Ingress
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ include "open-webui.name" . }}
|
name: {{ include "open-webui.name" . }}
|
||||||
labels:
|
labels:
|
||||||
{{- include "open-webui.labels" . | nindent 4 }}
|
{{- include "open-webui.labels" . | nindent 4 }}
|
||||||
{{- with .Values.webui.ingress.annotations }}
|
{{- with .Values.ingress.annotations }}
|
||||||
annotations:
|
annotations:
|
||||||
{{- toYaml . | nindent 4 }}
|
{{- toYaml . | nindent 4 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
spec:
|
spec:
|
||||||
{{- with .Values.webui.ingress.class }}
|
{{- with .Values.ingress.class }}
|
||||||
ingressClassName: {{ . }}
|
ingressClassName: {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.webui.ingress.tls }}
|
{{- if .Values.ingress.tls }}
|
||||||
tls:
|
tls:
|
||||||
- hosts:
|
- hosts:
|
||||||
- {{ .Values.webui.ingress.host | quote }}
|
- {{ .Values.ingress.host | quote }}
|
||||||
secretName: {{ default (printf "%s-tls" .Release.Name) .Values.webui.ingress.existingSecret }}
|
secretName: {{ default (printf "%s-tls" .Release.Name) .Values.ingress.existingSecret }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
rules:
|
rules:
|
||||||
- host: {{ .Values.webui.ingress.host }}
|
- host: {{ .Values.ingress.host }}
|
||||||
http:
|
http:
|
||||||
paths:
|
paths:
|
||||||
- path: /
|
- path: /
|
@ -1,23 +0,0 @@
|
|||||||
{{- if not .Values.ollama.externalHost }}
|
|
||||||
apiVersion: v1
|
|
||||||
kind: Service
|
|
||||||
metadata:
|
|
||||||
name: {{ include "ollama.name" . }}
|
|
||||||
labels:
|
|
||||||
{{- include "ollama.labels" . | nindent 4 }}
|
|
||||||
{{- with .Values.ollama.service.annotations }}
|
|
||||||
annotations:
|
|
||||||
{{- toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
spec:
|
|
||||||
selector:
|
|
||||||
{{- include "ollama.selectorLabels" . | nindent 4 }}
|
|
||||||
{{- with .Values.ollama.service }}
|
|
||||||
type: {{ .type }}
|
|
||||||
ports:
|
|
||||||
- protocol: TCP
|
|
||||||
name: http
|
|
||||||
port: {{ .port }}
|
|
||||||
targetPort: http
|
|
||||||
{{- end }}
|
|
||||||
{{- end }}
|
|
@ -1,98 +0,0 @@
|
|||||||
{{- if not .Values.ollama.externalHost }}
|
|
||||||
apiVersion: apps/v1
|
|
||||||
kind: StatefulSet
|
|
||||||
metadata:
|
|
||||||
name: {{ include "ollama.name" . }}
|
|
||||||
labels:
|
|
||||||
{{- include "ollama.labels" . | nindent 4 }}
|
|
||||||
{{- with .Values.ollama.annotations }}
|
|
||||||
annotations:
|
|
||||||
{{- toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
spec:
|
|
||||||
serviceName: {{ include "ollama.name" . }}
|
|
||||||
replicas: {{ .Values.ollama.replicaCount }}
|
|
||||||
selector:
|
|
||||||
matchLabels:
|
|
||||||
{{- include "ollama.selectorLabels" . | nindent 6 }}
|
|
||||||
template:
|
|
||||||
metadata:
|
|
||||||
labels:
|
|
||||||
{{- include "ollama.labels" . | nindent 8 }}
|
|
||||||
{{- with .Values.ollama.podAnnotations }}
|
|
||||||
annotations:
|
|
||||||
{{- toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
spec:
|
|
||||||
enableServiceLinks: false
|
|
||||||
automountServiceAccountToken: false
|
|
||||||
{{- with .Values.ollama.runtimeClassName }}
|
|
||||||
runtimeClassName: {{ . }}
|
|
||||||
{{- end }}
|
|
||||||
containers:
|
|
||||||
- name: {{ include "ollama.name" . }}
|
|
||||||
{{- with .Values.ollama.image }}
|
|
||||||
image: {{ .repository }}:{{ .tag }}
|
|
||||||
imagePullPolicy: {{ .pullPolicy }}
|
|
||||||
{{- end }}
|
|
||||||
tty: true
|
|
||||||
ports:
|
|
||||||
- name: http
|
|
||||||
containerPort: {{ .Values.ollama.service.containerPort }}
|
|
||||||
env:
|
|
||||||
{{- if .Values.ollama.gpu.enabled }}
|
|
||||||
- name: PATH
|
|
||||||
value: /usr/local/nvidia/bin:/usr/local/cuda/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
|
|
||||||
- name: LD_LIBRARY_PATH
|
|
||||||
value: /usr/local/nvidia/lib:/usr/local/nvidia/lib64
|
|
||||||
- name: NVIDIA_DRIVER_CAPABILITIES
|
|
||||||
value: compute,utility
|
|
||||||
{{- end }}
|
|
||||||
{{- with .Values.ollama.resources }}
|
|
||||||
resources: {{- toYaml . | nindent 10 }}
|
|
||||||
{{- end }}
|
|
||||||
volumeMounts:
|
|
||||||
- name: data
|
|
||||||
mountPath: /root/.ollama
|
|
||||||
{{- with .Values.ollama.nodeSelector }}
|
|
||||||
nodeSelector:
|
|
||||||
{{- toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
{{- with .Values.ollama.tolerations }}
|
|
||||||
tolerations:
|
|
||||||
{{- toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
volumes:
|
|
||||||
{{- if and .Values.ollama.persistence.enabled .Values.ollama.persistence.existingClaim }}
|
|
||||||
- name: data
|
|
||||||
persistentVolumeClaim:
|
|
||||||
claimName: {{ .Values.ollama.persistence.existingClaim }}
|
|
||||||
{{- else if not .Values.ollama.persistence.enabled }}
|
|
||||||
- name: data
|
|
||||||
emptyDir: {}
|
|
||||||
{{- else if and .Values.ollama.persistence.enabled (not .Values.ollama.persistence.existingClaim) }}
|
|
||||||
[]
|
|
||||||
volumeClaimTemplates:
|
|
||||||
- metadata:
|
|
||||||
name: data
|
|
||||||
labels:
|
|
||||||
{{- include "ollama.selectorLabels" . | nindent 8 }}
|
|
||||||
{{- with .Values.ollama.persistence.annotations }}
|
|
||||||
annotations:
|
|
||||||
{{- toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
spec:
|
|
||||||
accessModes:
|
|
||||||
{{- range .Values.ollama.persistence.accessModes }}
|
|
||||||
- {{ . | quote }}
|
|
||||||
{{- end }}
|
|
||||||
resources:
|
|
||||||
requests:
|
|
||||||
storage: {{ .Values.ollama.persistence.size | quote }}
|
|
||||||
storageClassName: {{ .Values.ollama.persistence.storageClass }}
|
|
||||||
{{- with .Values.ollama.persistence.selector }}
|
|
||||||
selector:
|
|
||||||
{{- toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
{{- end }}
|
|
||||||
{{- end }}
|
|
27
charts/open-webui/templates/pvc.yaml
Normal file
27
charts/open-webui/templates/pvc.yaml
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) }}
|
||||||
|
apiVersion: v1
|
||||||
|
kind: PersistentVolumeClaim
|
||||||
|
metadata:
|
||||||
|
name: {{ include "open-webui.name" . }}
|
||||||
|
labels:
|
||||||
|
{{- include "open-webui.selectorLabels" . | nindent 4 }}
|
||||||
|
{{- with .Values.persistence.annotations }}
|
||||||
|
annotations:
|
||||||
|
{{- toYaml . | nindent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
spec:
|
||||||
|
accessModes:
|
||||||
|
{{- range .Values.persistence.accessModes }}
|
||||||
|
- {{ . | quote }}
|
||||||
|
{{- end }}
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
storage: {{ .Values.persistence.size }}
|
||||||
|
{{- if .Values.persistence.storageClass }}
|
||||||
|
storageClassName: {{ .Values.persistence.storageClass }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.persistence.selector }}
|
||||||
|
selector:
|
||||||
|
{{- toYaml . | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
29
charts/open-webui/templates/service.yaml
Normal file
29
charts/open-webui/templates/service.yaml
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: {{ include "open-webui.name" . }}
|
||||||
|
labels:
|
||||||
|
{{- include "open-webui.labels" . | nindent 4 }}
|
||||||
|
{{- with .Values.service.labels }}
|
||||||
|
{{- toYaml . | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.service.annotations }}
|
||||||
|
annotations:
|
||||||
|
{{- toYaml . | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
{{- include "open-webui.selectorLabels" . | nindent 4 }}
|
||||||
|
type: {{ .Values.service.type | default "ClusterIP" }}
|
||||||
|
ports:
|
||||||
|
- protocol: TCP
|
||||||
|
name: http
|
||||||
|
port: {{ .Values.service.port }}
|
||||||
|
targetPort: http
|
||||||
|
{{- if .Values.service.nodePort }}
|
||||||
|
nodePort: {{ .Values.service.nodePort | int }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.service.loadBalancerClass }}
|
||||||
|
loadBalancerClass: {{ .Values.service.loadBalancerClass | quote }}
|
||||||
|
{{- end }}
|
||||||
|
|
@ -1,27 +0,0 @@
|
|||||||
{{- if and .Values.webui.persistence.enabled (not .Values.webui.persistence.existingClaim) }}
|
|
||||||
apiVersion: v1
|
|
||||||
kind: PersistentVolumeClaim
|
|
||||||
metadata:
|
|
||||||
name: {{ include "open-webui.name" . }}
|
|
||||||
labels:
|
|
||||||
{{- include "open-webui.selectorLabels" . | nindent 4 }}
|
|
||||||
{{- with .Values.webui.persistence.annotations }}
|
|
||||||
annotations:
|
|
||||||
{{- toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
spec:
|
|
||||||
accessModes:
|
|
||||||
{{- range .Values.webui.persistence.accessModes }}
|
|
||||||
- {{ . | quote }}
|
|
||||||
{{- end }}
|
|
||||||
resources:
|
|
||||||
requests:
|
|
||||||
storage: {{ .Values.webui.persistence.size }}
|
|
||||||
{{- if .Values.webui.persistence.storageClass }}
|
|
||||||
storageClassName: {{ .Values.webui.persistence.storageClass }}
|
|
||||||
{{- end }}
|
|
||||||
{{- with .Values.webui.persistence.selector }}
|
|
||||||
selector:
|
|
||||||
{{- toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
{{- end }}
|
|
@ -1,29 +0,0 @@
|
|||||||
apiVersion: v1
|
|
||||||
kind: Service
|
|
||||||
metadata:
|
|
||||||
name: {{ include "open-webui.name" . }}
|
|
||||||
labels:
|
|
||||||
{{- include "open-webui.labels" . | nindent 4 }}
|
|
||||||
{{- with .Values.webui.service.labels }}
|
|
||||||
{{- toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
{{- with .Values.webui.service.annotations }}
|
|
||||||
annotations:
|
|
||||||
{{- toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
spec:
|
|
||||||
selector:
|
|
||||||
{{- include "open-webui.selectorLabels" . | nindent 4 }}
|
|
||||||
type: {{ .Values.webui.service.type | default "ClusterIP" }}
|
|
||||||
ports:
|
|
||||||
- protocol: TCP
|
|
||||||
name: http
|
|
||||||
port: {{ .Values.webui.service.port }}
|
|
||||||
targetPort: http
|
|
||||||
{{- if .Values.webui.service.nodePort }}
|
|
||||||
nodePort: {{ .Values.webui.service.nodePort | int }}
|
|
||||||
{{- end }}
|
|
||||||
{{- if .Values.webui.service.loadBalancerClass }}
|
|
||||||
loadBalancerClass: {{ .Values.webui.service.loadBalancerClass | quote }}
|
|
||||||
{{- end }}
|
|
||||||
|
|
@ -12,7 +12,7 @@ ollama:
|
|||||||
gpu:
|
gpu:
|
||||||
enabled: false
|
enabled: false
|
||||||
|
|
||||||
webui:
|
|
||||||
resources:
|
resources:
|
||||||
requests:
|
requests:
|
||||||
cpu: "500m"
|
cpu: "500m"
|
||||||
|
@ -1,41 +1,11 @@
|
|||||||
nameOverride: ""
|
nameOverride: ""
|
||||||
|
|
||||||
ollama:
|
ollama:
|
||||||
externalHost: ""
|
# -- Automatically install Ollama Helm chart from https://otwld.github.io/ollama-helm/. Use [Helm Values](https://github.com/otwld/ollama-helm/#helm-values) to configure
|
||||||
annotations: {}
|
|
||||||
podAnnotations: {}
|
|
||||||
replicaCount: 1
|
|
||||||
image:
|
|
||||||
repository: ollama/ollama
|
|
||||||
tag: latest
|
|
||||||
pullPolicy: Always
|
|
||||||
resources: {}
|
|
||||||
persistence:
|
|
||||||
enabled: true
|
|
||||||
size: 30Gi
|
|
||||||
existingClaim: ""
|
|
||||||
accessModes:
|
|
||||||
- ReadWriteOnce
|
|
||||||
storageClass: ""
|
|
||||||
selector: {}
|
|
||||||
annotations: {}
|
|
||||||
nodeSelector: {}
|
|
||||||
# -- If using a special runtime container such as nvidia, set it here.
|
|
||||||
runtimeClassName: ""
|
|
||||||
tolerations:
|
|
||||||
- key: nvidia.com/gpu
|
|
||||||
operator: Exists
|
|
||||||
effect: NoSchedule
|
|
||||||
service:
|
|
||||||
type: ClusterIP
|
|
||||||
annotations: {}
|
|
||||||
port: 80
|
|
||||||
containerPort: 11434
|
|
||||||
gpu:
|
|
||||||
# -- Enable additional ENV values to help Ollama discover GPU usage
|
|
||||||
enabled: false
|
enabled: false
|
||||||
|
|
||||||
webui:
|
externalHosts:
|
||||||
|
|
||||||
annotations: {}
|
annotations: {}
|
||||||
podAnnotations: {}
|
podAnnotations: {}
|
||||||
replicaCount: 1
|
replicaCount: 1
|
||||||
|
Loading…
Reference in New Issue
Block a user