Compare commits

...

21 Commits

Author SHA1 Message Date
James W.
3cf4514166 Merge pull request #57 from 0xThresh/feat-owui-0.3.9
Upgrade Chart Dependencies
2024-08-04 18:54:36 -06:00
0xThresh.eth
0b5fb66ac2 Updated dependent charts 2024-08-04 18:39:47 -06:00
0xThresh.eth
961bbcda2c Upgrade OWUI to v0.3.9 2024-08-04 18:13:03 -06:00
0xThresh
803c99e135 Merge pull request #55 from chgl/publish-as-an-oci-artifact
Push the helm charts to ghcr.io as an OCI artifact
2024-07-30 22:37:06 -06:00
chgl
de2f698c72 Also apply the container security context to the initContainer (#54) 2024-07-28 14:48:48 -07:00
chgl
7273974943 Push the helm charts to ghcr.io as an OCI artifact 2024-07-27 13:21:06 +02:00
0xThresh
b7b6bc2022 fix: Use init container fix offline install issue (#53) 2024-07-23 17:20:07 -07:00
0xThresh
dd918f0216 Merge pull request #51 from chgl/make-security-context-configurable
feat: configure pod and container security context settings
2024-07-20 17:39:03 -06:00
chgl
62e5d9c95b feat: configure pod and container security context settings 2024-07-20 12:41:24 +02:00
0xThresh
587b93ecd4 Updated Ollama charts to latest version (#48)
Updated Ollama charts to latest version
2024-07-15 13:55:17 -07:00
0xThresh
309e0aa30c Merge pull request #45 from 0xThresh/feat-owui-0.3.8
feat: Upgrade to Open WebUI v0.3.8
2024-07-14 21:25:20 -06:00
0xThresh.eth
deaaef0147 feat: Upgrade to Open WebUI v0.3.8 2024-07-14 21:25:04 -06:00
0xThresh
881fe7140d Merge pull request #44 from 0xThresh/feat-owui-0.3.7
feat: Upgrade to Open WebUI v0.3.7
2024-07-14 21:07:31 -06:00
0xThresh.eth
2cb251504d feat: Upgrade to Open WebUI v0.3.7 2024-07-14 21:05:47 -06:00
0xThresh
5a54d7f998 Merge pull request #43 from 0xThresh/feat-owui-0.3.6
feat: Upgrade to Open WebUI v0.3.6
2024-07-14 20:54:04 -06:00
0xThresh.eth
d7a271013f feat: Upgrade to Open WebUI v0.3.6 2024-07-14 20:53:21 -06:00
Matthieu Charreire
95a7a220cc fix: set serviceName in StatefulSet spec (#41) 2024-06-26 07:51:24 -07:00
0xThresh
667cc5475a Set Pipelines API key to default on Open WebUI env vars (#39) 2024-06-14 23:19:51 -07:00
Pranay Jain
2ddceb06e7 feat: Allow optional clusterIP and loadBalancerIP fields on the openwebui service template (#37)
feat: Allow optional clusterIP and loadBalancerIP fields on the openwebui service template
2024-06-13 13:44:03 -07:00
0xThresh
4ced350783 Merge pull request #36 from matthieucharreire/fix/workload-management
fix: use StatefulSet instead of Deployment if persistence is enabled
2024-06-13 13:24:30 -06:00
Matthieu Charreire
72dad958af fix: use StatefulSet if persistence is enabled 2024-06-13 18:14:25 +02:00
12 changed files with 107 additions and 30 deletions

View File

@@ -11,6 +11,7 @@ jobs:
release:
permissions:
contents: write
packages: write
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
@@ -23,11 +24,6 @@ jobs:
git config user.name "$GITHUB_ACTOR"
git config user.email "$GITHUB_ACTOR@users.noreply.github.com"
- name: Install Helm
uses: azure/setup-helm@v4
env:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
- name: Add Dependency Repos
run: |
helm repo add ollama https://otwld.github.io/ollama-helm/
@@ -41,3 +37,19 @@ jobs:
charts_dir: charts/
env:
CR_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
- name: Login to GitHub Container Registry
run: |
echo "${GHCR_REGISTRY_PASSWORD}" | helm registry login ghcr.io --username ${{ github.actor }} --password-stdin
env:
GHCR_REGISTRY_PASSWORD: "${{ secrets.GITHUB_TOKEN }}"
- name: Push Charts to ghcr.io
run: |
for pkg in .cr-release-packages/*; do
if [ -z "${pkg:-}" ]; then
echo "No charts to release"
break
fi
helm push "${pkg}" oci://ghcr.io/${{ github.repository }}
done

View File

@@ -8,9 +8,10 @@
1. **Fork the repository** and create your branch from `main`.
2. **Make your changes** and ensure they follow the guidelines below.
3. **Test your changes** locally to ensure everything works as expected. This should include deploying your updates to a live Kubernetes cluster (whether local or remote).
4. **Commit your changes** using a descriptive commit message that follows the [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/) specification.
5. **Push your changes** to your forked repository.
6. **Create a Pull Request** and provide a detailed description of your changes. Please consider dropping us your redacted `values.yaml` file used during your testing in the PR so we can make sure we see consistent results.
4. **Run helm-docs** to ensure that the README is updated with the latest changes.
5. **Commit your changes** using a descriptive commit message that follows the [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/) specification.
6. **Push your changes** to your forked repository.
7. **Create a Pull Request** and provide a detailed description of your changes. Please consider dropping us your redacted `values.yaml` file used during your testing in the PR so we can make sure we see consistent results.
## Guidelines

View File

@@ -1,9 +1,9 @@
dependencies:
- name: ollama
repository: https://otwld.github.io/ollama-helm/
version: 0.33.0
version: 0.50.0
- name: pipelines
repository: https://helm.openwebui.com
version: 0.0.1
digest: sha256:1138e9fa48135fabda643adc69845284d4ba08745caeb958a646f10c7a6f9fe1
generated: "2024-06-04T21:28:16.737572-06:00"
version: 0.0.3
digest: sha256:91b80e619d25a3822cc861d0ea5a40869172094a59bc7974cf67fb002eea5877
generated: "2024-08-04T18:31:41.380936-06:00"

View File

@@ -1,7 +1,7 @@
apiVersion: v2
name: open-webui
version: 3.0.1
appVersion: "0.2.5"
version: 3.1.2
appVersion: "0.3.9"
home: https://www.openwebui.com/
icon: https://raw.githubusercontent.com/open-webui/open-webui/main/static/favicon.png

View File

@@ -1,6 +1,6 @@
# open-webui
![Version: 3.0.0](https://img.shields.io/badge/Version-3.0.0-informational?style=flat-square) ![AppVersion: 0.2.2](https://img.shields.io/badge/AppVersion-0.2.2-informational?style=flat-square)
![Version: 3.1.0](https://img.shields.io/badge/Version-3.1.0-informational?style=flat-square) ![AppVersion: v0.3.8](https://img.shields.io/badge/AppVersion-v0.3.8-informational?style=flat-square)
Open WebUI: A User-Friendly Web Interface for Chat Interactions 👋
@@ -42,8 +42,10 @@ helm upgrade --install open-webui open-webui/open-webui
| affinity | object | `{}` | Affinity for pod assignment |
| annotations | object | `{}` | |
| clusterDomain | string | `"cluster.local"` | Value of cluster domain |
| extraEnvVars | string | `nil` | Additional environments variables on the output Deployment definition. Most up-to-date environment variables can be found here: https://docs.openwebui.com/getting-started/env-configuration/ |
| image | object | `{"pullPolicy":"Always","repository":"ghcr.io/open-webui/open-webui","tag":"latest"}` | Open WebUI image tags can be found here: https://github.com/open-webui/open-webui/pkgs/container/open-webui |
| containerSecurityContext | object | `{}` | Configure container security context ref: <https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-containe> |
| extraEnvVars | list | `[{"name":"OPENAI_API_KEY","value":"0p3n-w3bu!"}]` | Additional environments variables on the output Deployment definition. Most up-to-date environment variables can be found here: https://docs.openwebui.com/getting-started/env-configuration/ |
| extraEnvVars[0] | object | `{"name":"OPENAI_API_KEY","value":"0p3n-w3bu!"}` | Default API key value for Pipelines. Should be updated in a production deployment, or be changed to the required API key if not using Pipelines |
| image | object | `{"pullPolicy":"IfNotPresent","repository":"ghcr.io/open-webui/open-webui","tag":"latest"}` | Open WebUI image tags can be found here: https://github.com/open-webui/open-webui/pkgs/container/open-webui |
| 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` | |
@@ -64,8 +66,9 @@ helm upgrade --install open-webui open-webui/open-webui
| persistence.size | string | `"2Gi"` | |
| persistence.storageClass | string | `""` | |
| pipelines.enabled | bool | `true` | Automatically install Pipelines chart to extend Open WebUI functionality using Pipelines: https://github.com/open-webui/pipelines |
| pipelines.extraEnvVars[0] | object | `{"name":"PIPELINES_API_KEY","value":"0p3n-w3bu!"}` | This is a default password that can and should be updated on your production deployment, and should be stored in a K8s secret |
| pipelines.extraEnvVars | list | `[]` | This section can be used to pass required environment variables to your pipelines (e.g. Langfuse hostname) |
| podAnnotations | object | `{}` | |
| podSecurityContext | object | `{}` | Configure pod security context ref: <https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-containe> |
| replicaCount | int | `1` | |
| resources | object | `{}` | |
| service | object | `{"annotations":{},"containerPort":8080,"labels":{},"loadBalancerClass":"","nodePort":"","port":80,"type":"ClusterIP"}` | Service values to expose Open WebUI pods to cluster |

Binary file not shown.

Binary file not shown.

View File

@@ -26,4 +26,10 @@ spec:
{{- if .Values.service.loadBalancerClass }}
loadBalancerClass: {{ .Values.service.loadBalancerClass | quote }}
{{- end }}
{{- if and (eq .Values.service.type "ClusterIP") (.Values.service.clusterIP) }}
clusterIP: {{ .Values.service.clusterIP }}
{{- end }}
{{- if and (eq .Values.service.type "loadBalancer") (.Values.service.loadBalancerIP) }}
loadBalancerIP: {{ .Values.service.loadBalancerIP }}
{{- end }}

View File

@@ -1,5 +1,9 @@
apiVersion: apps/v1
{{- if .Values.persistence.enabled }}
kind: StatefulSet
{{- else }}
kind: Deployment
{{- end }}
metadata:
name: {{ include "open-webui.name" . }}
labels:
@@ -10,6 +14,9 @@ metadata:
{{- end }}
spec:
replicas: {{ .Values.replicaCount }}
{{- if .Values.persistence.enabled }}
serviceName: {{ include "open-webui.name" . }}
{{- end }}
selector:
matchLabels:
{{- include "open-webui.selectorLabels" . | nindent 6 }}
@@ -22,8 +29,26 @@ spec:
{{- toYaml . | nindent 8 }}
{{- end }}
spec:
initContainers:
- name: copy-app-data
{{- with .Values.image }}
image: {{ .repository }}:{{ .tag | default $.Chart.AppVersion }}
imagePullPolicy: {{ .pullPolicy }}
{{- end }}
command: ['sh', '-c', 'cp -R /app/backend/data/* /tmp/app-data/']
{{- with .Values.containerSecurityContext }}
securityContext:
{{- toYaml . | nindent 10 }}
{{- end }}
volumeMounts:
- name: data
mountPath: /tmp/app-data
enableServiceLinks: false
automountServiceAccountToken: false
{{- with .Values.podSecurityContext }}
securityContext:
{{- toYaml . | nindent 8 }}
{{- end }}
containers:
- name: {{ .Chart.Name }}
{{- with .Values.image }}
@@ -36,6 +61,10 @@ spec:
{{- with .Values.resources }}
resources: {{- toYaml . | nindent 10 }}
{{- end }}
{{- with .Values.containerSecurityContext }}
securityContext:
{{- toYaml . | nindent 10 }}
{{- end }}
volumeMounts:
- name: data
mountPath: /app/backend/data
@@ -80,4 +109,4 @@ spec:
- name: data
persistentVolumeClaim:
claimName: {{ include "open-webui.name" . }}
{{- end }}
{{- end }}

View File

@@ -19,15 +19,9 @@ ollama:
pipelines:
# -- Automatically install Pipelines chart to extend Open WebUI functionality using Pipelines: https://github.com/open-webui/pipelines
enabled: true
extraEnvVars:
# -- This is a default password that can and should be updated on your production deployment, and should be stored in a K8s secret
- name: PIPELINES_API_KEY
value: "0p3n-w3bu!"
# valueFrom:
# secretKeyRef:
# name: pipelines-api-key
# key: api-key
enabled: true
# -- This section can be used to pass required environment variables to your pipelines (e.g. Langfuse hostname)
extraEnvVars: []
# -- A list of Ollama API endpoints. These can be added in lieu of automatically installing the Ollama Helm chart, or in addition to it.
ollamaUrls: []
@@ -42,7 +36,7 @@ replicaCount: 1
image:
repository: ghcr.io/open-webui/open-webui
tag: "latest"
pullPolicy: Always
pullPolicy: "IfNotPresent"
resources: {}
ingress:
enabled: false
@@ -89,6 +83,13 @@ openaiBaseApiUrl: ""
# -- Additional environments variables on the output Deployment definition. Most up-to-date environment variables can be found here: https://docs.openwebui.com/getting-started/env-configuration/
extraEnvVars:
# -- Default API key value for Pipelines. Should be updated in a production deployment, or be changed to the required API key if not using Pipelines
- name: OPENAI_API_KEY
value: "0p3n-w3bu!"
# valueFrom:
# secretKeyRef:
# name: pipelines-api-key
# key: api-key
# - name: OPENAI_API_KEY
# valueFrom:
# secretKeyRef:
@@ -96,3 +97,28 @@ extraEnvVars:
# key: api-key
# - name: OLLAMA_DEBUG
# value: "1"
# -- Configure pod security context
# ref: <https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-containe>
podSecurityContext:
{}
# fsGroupChangePolicy: Always
# sysctls: []
# supplementalGroups: []
# fsGroup: 1001
# -- Configure container security context
# ref: <https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-containe>
containerSecurityContext:
{}
# runAsUser: 1001
# runAsGroup: 1001
# runAsNonRoot: true
# privileged: false
# allowPrivilegeEscalation: false
# readOnlyRootFilesystem: false
# capabilities:
# drop:
# - ALL
# seccompProfile:
# type: "RuntimeDefault"