Compare commits

...

77 Commits
v6.0.0 ... main

Author SHA1 Message Date
James W.
80232f8a26 Merge pull request #255 from bdriggersTorch/openwebui-command-override
Some checks failed
Release Open WebUI Helm Charts / release (push) Has been cancelled
Check Open WebUI Helm Charts (open-webui) / Lint Helm Chart (push) Has been cancelled
Check Open WebUI Helm Charts (open-webui) / Test Chart Deployment (push) Has been cancelled
2025-06-18 22:55:48 -06:00
Blake Driggers
5dc11a8179 Merge remote-tracking branch 'upstream/main' into openwebui-command-override 2025-06-18 17:34:23 -05:00
James W.
df7e805e73 Merge pull request #256 from this-is-tobi/chore/upgrade-open-webui 2025-06-17 08:16:41 -06:00
this-is-tobi
79d106aa33 chore(open-webui): upgrade open-webui to v0.6.15 (chart v6.21.0)
upgrade subcharts (redis v21.2.4 - postgresql v16.7.12)
2025-06-17 10:59:49 +02:00
Blake Driggers
fab19a9666 feat(open-webui): add optional command args overrides for open-webui copyAppData init container 2025-06-12 10:46:36 -05:00
Blake Driggers
ce05f9ee38 feat(open-webui): add optional command and args overrides for open-webui container 2025-06-11 14:25:18 -05:00
James W.
b33c1bda00 Merge pull request #252 from this-is-tobi/chore/upgrade-open-webui
Some checks failed
Release Open WebUI Helm Charts / release (push) Has been cancelled
Check Open WebUI Helm Charts (open-webui) / Lint Helm Chart (push) Has been cancelled
Check Open WebUI Helm Charts (open-webui) / Test Chart Deployment (push) Has been cancelled
2025-06-10 18:16:07 -06:00
this-is-tobi
0d10e07045 chore(open-webui): upgrade open-webui to v0.6.14 (chart v6.20.0)
upgrade subcharts (redis v21.2.2 - postgresql v16.7.10)
2025-06-11 02:06:34 +02:00
James W.
9ea553bb62 Merge pull request #251 from zadjadr/patch-1 2025-06-10 18:06:06 -06:00
Zadjad Rezai
e0fb781535 Allow setting WEBUI_URL manually
We use a redirect in our setup, which means the ingress host is different then the WEBUI_URL.

This change allows to set the WEBUI_URL either manually via extraenv or via ingress.host
2025-06-03 12:02:19 +00:00
James W.
5fb77716b7 Merge pull request #248 from open-webui/v0.6.13
Some checks failed
Release Open WebUI Helm Charts / release (push) Has been cancelled
Check Open WebUI Helm Charts (open-webui) / Lint Helm Chart (push) Has been cancelled
Check Open WebUI Helm Charts (open-webui) / Test Chart Deployment (push) Has been cancelled
chore: update subcharts, upgrade to v0.6.13
2025-05-30 11:03:19 -07:00
0xThresh.eth
dad4af5dfe chore: update subcharts, upgrade to v0.6.13 2025-05-30 11:59:42 -06:00
0xThresh.eth
b0f84e533c chore: upgrade to 0.6.12 2025-05-30 11:58:08 -06:00
James W.
85a85c5d8d Merge pull request #247 from ffais/webui-url-ingress
fix(open-webui): add WEBUI_URL env var when ingress is enabled
2025-05-30 10:56:31 -07:00
ffais
28bda01652 fix(open-webui): add WEBUI_URL env var when ingress is enabled
Signed-off-by: ffais <ffais@fbk.eu>
2025-05-30 09:50:58 +02:00
James W.
59b8824246 Merge pull request #246 from this-is-tobi/chore/upgrade-open-webui
Some checks failed
Release Open WebUI Helm Charts / release (push) Has been cancelled
Check Open WebUI Helm Charts (open-webui) / Lint Helm Chart (push) Has been cancelled
Check Open WebUI Helm Charts (open-webui) / Test Chart Deployment (push) Has been cancelled
2025-05-27 17:18:36 -07:00
this-is-tobi
7a3678cd53 chore(open-webui): upgrade open-webui to v0.6.11 (chart v6.17.0)
upgrade subcharts (ollama v1.18.0 - pipelines v0.7.0 - redis v21.1.8 - postgresql v16.7.5)
2025-05-28 02:05:05 +02:00
James W.
4601246f1b Merge pull request #244 from jackhauGR/feat/pipelines-commonEnvVars
Some checks failed
Release Open WebUI Helm Charts / release (push) Has been cancelled
Check Open WebUI Helm Charts (pipelines) / Lint Helm Chart (push) Has been cancelled
Check Open WebUI Helm Charts (pipelines) / Test Chart Deployment (push) Has been cancelled
2025-05-22 13:20:02 -07:00
jackhauGR
61ad8836b7 Merge branch 'main' into feat/pipelines-commonEnvVars 2025-05-19 19:26:21 +01:00
James W.
d417dc1ea3 Merge pull request #245 from this-is-tobi/chore/upgrade-open-webui
Some checks failed
Release Open WebUI Helm Charts / release (push) Has been cancelled
Check Open WebUI Helm Charts (open-webui) / Lint Helm Chart (push) Has been cancelled
Check Open WebUI Helm Charts (open-webui) / Test Chart Deployment (push) Has been cancelled
2025-05-19 11:10:13 -07:00
this-is-tobi
f38ccab08e chore(open-webui): upgrade open-webui to v0.6.10 (chart v6.16.0)
upgrade subcharts (ollama v1.17.0)
2025-05-19 19:00:48 +02:00
jackhauGR
623d36db3f feat(pipelines): add support for commonEnvVars for shared environment variables across environments 2025-05-19 17:43:49 +01:00
James W.
ac8bf7a7e6 Merge pull request #243 from this-is-tobi/chore/upgrade-open-webui
Some checks failed
Release Open WebUI Helm Charts / release (push) Has been cancelled
Check Open WebUI Helm Charts (open-webui) / Lint Helm Chart (push) Has been cancelled
Check Open WebUI Helm Charts (open-webui) / Test Chart Deployment (push) Has been cancelled
2025-05-16 12:44:31 -07:00
this-is-tobi
85e3544b08 chore(open-webui): upgrade open-webui to v0.6.9 (chart v6.15.0)
upgrade subcharts (redis v21.1.3 - postgresql v16.7.4)
2025-05-16 21:01:56 +02:00
James W.
e03a80610b Merge pull request #242 from jackhauGR/feat-websocket-redis-podlabels
Some checks failed
Release Open WebUI Helm Charts / release (push) Has been cancelled
Check Open WebUI Helm Charts (open-webui) / Lint Helm Chart (push) Has been cancelled
Check Open WebUI Helm Charts (open-webui) / Test Chart Deployment (push) Has been cancelled
2025-05-15 09:46:00 -07:00
jackhauGR
73b5127c50 feat(open-webui): add pod labels to websocket-redis 2025-05-14 17:10:24 +01:00
James W.
51a151fc4c Merge pull request #238 from jackhauGR/chore
Some checks failed
Release Open WebUI Helm Charts / release (push) Has been cancelled
Check Open WebUI Helm Charts (open-webui) / Lint Helm Chart (push) Has been cancelled
Check Open WebUI Helm Charts (open-webui) / Test Chart Deployment (push) Has been cancelled
2025-05-09 07:17:22 -07:00
jackhauGR
d723530b13 chore: update Chart.lock 2025-05-09 14:57:12 +01:00
James W.
545738a200 Merge pull request #236 from jackhauGR/feat 2025-05-09 06:44:11 -07:00
James W.
7f59bbbb39 Merge pull request #237 from jackhauGR/feat2 2025-05-09 06:43:59 -07:00
jackhauGR
5fcc219066 feat(open-webui): add support for commonEnvVars to inject shared environment variables 2025-05-09 14:34:46 +01:00
jackhauGR
caab2a349c Merge branch 'main' into feat 2025-05-09 13:54:52 +01:00
jackhauGR
27c984c2bc update version from 6.11.0 to 6.12.0 2025-05-09 11:27:24 +01:00
jackhauGR
a06544036b added docs 2025-05-08 17:35:59 +01:00
jackhauGR
7c31452932 added docs 2025-05-08 17:35:23 +01:00
jackhauGR
9f439a1629 feat(open-webui): support extraLabels for custom metadata in Ingress 2025-05-08 17:31:58 +01:00
James W.
78ba8db769 Merge pull request #235 from hdt12a1/main
Some checks are pending
Release Open WebUI Helm Charts / release (push) Waiting to run
Check Open WebUI Helm Charts (open-webui) / Lint Helm Chart (push) Waiting to run
Check Open WebUI Helm Charts (open-webui) / Test Chart Deployment (push) Blocked by required conditions
2025-05-08 08:59:06 -07:00
Duck
82a1bb0270 Add nodeSelector support to websocket configuration 2025-05-08 22:23:39 +07:00
0xThresh.eth
30918f40a0 chore: update Open WebUI to latest app version
Some checks are pending
Release Open WebUI Helm Charts / release (push) Waiting to run
Check Open WebUI Helm Charts (open-webui) / Lint Helm Chart (push) Waiting to run
Check Open WebUI Helm Charts (open-webui) / Test Chart Deployment (push) Blocked by required conditions
2025-05-07 17:23:45 -06:00
James W.
9a67c0b46f Merge pull request #234 from mjtrangoni/feat-configure-logging
feat(open-webui): Add application logging configuration
2025-05-07 16:22:08 -07:00
Mario Trangoni
1c091cbd03 feat(open-webui): Add application logging configuration
Signed-off-by: Mario Trangoni <mjtrangoni@gmail.com>
2025-05-07 14:22:25 +02:00
James W.
22b300940a Merge pull request #233 from jackhauGR/main
Some checks failed
Release Open WebUI Helm Charts / release (push) Has been cancelled
Check Open WebUI Helm Charts (open-webui) / Lint Helm Chart (push) Has been cancelled
Check Open WebUI Helm Charts (pipelines) / Lint Helm Chart (push) Has been cancelled
Check Open WebUI Helm Charts (open-webui) / Test Chart Deployment (push) Has been cancelled
Check Open WebUI Helm Charts (pipelines) / Test Chart Deployment (push) Has been cancelled
2025-05-06 09:06:42 -07:00
jackhauGR
ac86a1bc75 updated version 2025-05-06 17:02:32 +01:00
Jack Hau
b6c8264928 Merge branch 'open-webui:main' into main 2025-05-06 16:58:36 +01:00
jackhauGR
e3ab5addb5 update 2025-05-06 16:12:44 +01:00
James W.
7a93256102 Merge pull request #227 from mjtrangoni/feature-azure-storage-key
feat(open-webui): Make it possible to configure Storage credentials via k8s secrets
2025-05-06 07:26:28 -07:00
Mario Trangoni
a5073d40f2 feat(open-webui): Make it possible to configure Amazon S3 Storage secret key via k8s secrets
Signed-off-by: Mario Trangoni <mjtrangoni@gmail.com>
2025-05-06 16:21:45 +02:00
Mario Trangoni
86e42681ca feat(open-webui): Make it possible to configure Google Cloud Storage Application Credentials JSON file via k8s secrets
Signed-off-by: Mario Trangoni <mjtrangoni@gmail.com>
2025-05-06 16:18:48 +02:00
Mario Trangoni
e6c33ca07c feat(open-webui): Make it possible to configure Azure Storage credentials via k8s secrets
Signed-off-by: Mario Trangoni <mjtrangoni@gmail.com>
2025-05-06 16:18:48 +02:00
James W.
01b61f5f64 Merge pull request #232 from open-webui/fix-remove-milvus
fix: Remove Milvus dependency due to size issues
2025-05-06 07:17:40 -07:00
0xThresh.eth
d7e40d7c9a fix: Remove RAG section 2025-05-06 08:13:36 -06:00
0xThresh.eth
66173b69b8 chore: helm-docs 2025-05-06 08:11:17 -06:00
0xThresh.eth
e9c86cd6fc chore: update chart appVersion 2025-05-06 08:11:00 -06:00
0xThresh.eth
9a0a156353 fix: Remove Milvus due to size issues 2025-05-06 08:10:28 -06:00
James W.
ea67916135 Merge pull request #226 from mjtrangoni/feature-secrets-oauth
Some checks are pending
Release Open WebUI Helm Charts / release (push) Waiting to run
Check Open WebUI Helm Charts (open-webui) / Lint Helm Chart (push) Waiting to run
Check Open WebUI Helm Charts (open-webui) / Test Chart Deployment (push) Blocked by required conditions
feat(open-webui): Make it possible to define SSO OAuth secrets from Kubernetes Secrets
2025-05-06 06:20:30 -07:00
Mario Trangoni
f8ae1e036e feat(open-webui): Make it possible to define SSO OAuth secrets from k8s secrets
Signed-off-by: Mario Trangoni <mjtrangoni@gmail.com>
2025-05-06 11:45:18 +02:00
James W.
bfca2d950b Merge pull request #230 from jyje/bump/open-webui-v0.6.6
Some checks are pending
Release Open WebUI Helm Charts / release (push) Waiting to run
Check Open WebUI Helm Charts (open-webui) / Lint Helm Chart (push) Waiting to run
Check Open WebUI Helm Charts (open-webui) / Test Chart Deployment (push) Blocked by required conditions
2025-05-05 09:52:33 -06:00
jyje
ebef0fe568 chore: Update open-webui to v0.6.6 (chart 6.6.0)
- update open-webui
    - app: from v0.6.5 to v0.6.6
    - chart: from 6.5.0 to 6.6.0
- updated subchart
    - ollama (from 1.14.0 to 1.15.0): upgrade app version from v0.6.5 to v0.6.6 (see https://github.com/otwld/ollama-helm/compare/ollama-1.14.0...ollama-1.15.0)
    - redis (from 20.12.1 to 20.13.4): app minor update, chart edit (main arguments, sidecar arguments)
    - postgresql (from 16.6.3 to 16.6.6): app minor update, chart edit (backup, update-password)
    - milvus (from 4.2.45 to 4.2.48): upgrade app version from v2.5.9 to v2.5.11 (see https://github.com/zilliztech/milvus-helm/compare/milvus-4.2.45...milvus-4.2.48)
2025-05-06 00:32:55 +09:00
James W.
c2ad4c072d Merge pull request #229 from jyje/fix/add-milvus-dependency
Some checks are pending
Release Open WebUI Helm Charts / release (push) Waiting to run
Check Open WebUI Helm Charts (open-webui) / Lint Helm Chart (push) Waiting to run
Check Open WebUI Helm Charts (open-webui) / Test Chart Deployment (push) Blocked by required conditions
2025-05-04 19:55:35 -06:00
jyje
4449c53971 feat: add an example values for rag and milvus 2025-05-05 10:06:59 +09:00
James W.
bf84642781 Merge pull request #228 from jyje/fix/add-milvus-dependency 2025-05-04 18:13:33 -06:00
jyje
e4aaf6ed9c fix(ci): add milvus repo on helm-release 2025-05-05 09:02:17 +09:00
James W.
d7a8188b30 Merge pull request #223 from this-is-tobi/feat/add-milvus-dependency
Some checks are pending
Release Open WebUI Helm Charts / release (push) Waiting to run
Check Open WebUI Helm Charts (open-webui) / Lint Helm Chart (push) Waiting to run
Check Open WebUI Helm Charts (open-webui) / Test Chart Deployment (push) Blocked by required conditions
2025-05-04 08:30:01 -06:00
this-is-tobi
94aeb86dce feat: re-enable milvus support in open-webui chart 2025-04-17 15:12:09 +02:00
James W.
8e19d0e938 Merge pull request #222 from this-is-tobi/chore/upgrade-open-webui
Some checks failed
Release Open WebUI Helm Charts / release (push) Has been cancelled
Check Open WebUI Helm Charts (open-webui) / Lint Helm Chart (push) Has been cancelled
Check Open WebUI Helm Charts (open-webui) / Test Chart Deployment (push) Has been cancelled
2025-04-15 18:21:09 -06:00
this-is-tobi
b0234bc9a9 chore: update open-webui to v0.6.5 (chart 6.4.0) 2025-04-16 02:02:21 +02:00
this-is-tobi
a79f362f7c feat: handle envFrom in open-webui chart values 2025-04-16 02:00:33 +02:00
James W.
fa01ccd3c4 Merge pull request #221 from this-is-tobi/feat/improve-open-webui-whart
Some checks failed
Release Open WebUI Helm Charts / release (push) Has been cancelled
Check Open WebUI Helm Charts (open-webui) / Lint Helm Chart (push) Has been cancelled
Check Open WebUI Helm Charts (open-webui) / Test Chart Deployment (push) Has been cancelled
Feat/improve open webui chart
2025-04-13 14:00:57 -06:00
this-is-tobi
f1c4efb94f refactor: add charts dependencies tgz to gitignore 2025-04-13 19:05:56 +02:00
this-is-tobi
4c789ac788 fix: handle env vars override in open-webui chart 2025-04-13 18:38:04 +02:00
this-is-tobi
34969f304e feat: add storage provider support in open-webui chart 2025-04-13 18:37:07 +02:00
this-is-tobi
bb57d8c928 feat: add postgresql dependency support in open-webui chart 2025-04-13 18:35:22 +02:00
James W.
f8dfeaaa3f Merge pull request #220 from jyje/v0.6.4
Update chart version and chart lock of open-webui to 6.2.0
2025-04-13 09:23:05 -06:00
jyje
73728f7f7b chore: Update open-webui to v0.6.4 (chart 6.2.0)
- update open-webui
    - app: from v0.6.1 to v0.6.4
    - chart: from 6.1.0 to 6.2.0
- updated subchart
    - ollama (from 1.9.0 to 1.14.0): see https://github.com/otwld/ollama-helm/compare/ollama-1.9.0...ollama-1.14.0
    - redis (from 20.11.3 to 20.11.5): update image tags
2025-04-13 22:01:56 +09:00
James W.
e7b4f8b9b9 Merge pull request #217 from francovp/chore-update-openweb-ui-0.6.1
Some checks failed
Release Open WebUI Helm Charts / release (push) Has been cancelled
Check Open WebUI Helm Charts (open-webui) / Lint Helm Chart (push) Has been cancelled
Check Open WebUI Helm Charts (open-webui) / Test Chart Deployment (push) Has been cancelled
chore: update openweb-ui to v0.6.1 (chart 6.1.0)
2025-04-05 21:13:34 -06:00
Franco Valerio
599f908d0b chore: update openweb-ui to v0.6.1 (chart 6.1.0) 2025-04-05 23:09:37 -04:00
James W.
dd622e3c58 Merge pull request #214 from open-webui/v6.0.0
feat: Update to v0.6.0
2025-03-31 21:29:29 -06:00
19 changed files with 578 additions and 35 deletions

View File

@@ -20,20 +20,21 @@ jobs:
- name: Set up Helm
uses: azure/setup-helm@v4
- name: Lint open-webui Helm Chart
run: |
helm lint ./charts/open-webui
- name: Add Dependency Repos
run: |
helm repo add ollama https://otwld.github.io/ollama-helm/
helm repo add open-webui https://helm.openwebui.com/
helm repo add tika https://apache.jfrog.io/artifactory/tika/
helm repo add redis https://charts.bitnami.com/bitnami
helm repo add bitnami https://charts.bitnami.com/bitnami
- name: Build open-webui Helm dependencies
run: |
helm dependency build ./charts/open-webui
- name: Lint open-webui Helm Chart
run: |
helm lint ./charts/open-webui
test-deploy:
name: Test Chart Deployment
runs-on: ubuntu-latest
@@ -52,6 +53,17 @@ jobs:
- name: Set up KinD Cluster
uses: helm/kind-action@v1
- name: Add Dependency Repos
run: |
helm repo add ollama https://otwld.github.io/ollama-helm/
helm repo add open-webui https://helm.openwebui.com/
helm repo add tika https://apache.jfrog.io/artifactory/tika/
helm repo add bitnami https://charts.bitnami.com/bitnami
- name: Build open-webui Helm dependencies
run: |
helm dependency build ./charts/open-webui
- name: Template open-webui Helm Chart
run: |
helm template open-webui ./charts/open-webui \

4
.gitignore vendored
View File

@@ -122,4 +122,8 @@ Temporary Items
# iCloud generated files
*.icloud
### Helm ###
# Chart dependencies
**/charts/*.tgz
# End of https://www.toptal.com/developers/gitignore/api/macos,intellij+all,helm

View File

@@ -1,15 +1,18 @@
dependencies:
- name: ollama
repository: https://otwld.github.io/ollama-helm/
version: 1.12.0
version: 1.19.0
- name: pipelines
repository: https://helm.openwebui.com
version: 0.5.0
version: 0.7.0
- name: tika
repository: https://apache.jfrog.io/artifactory/tika
version: 2.9.0
- name: redis
repository: https://charts.bitnami.com/bitnami
version: 20.11.4
digest: sha256:05f1cd5e4bfc7ca7f293e13b8ce12b7edf5ba33ba55ec151eccf86cfb30b180a
generated: "2025-03-30T15:26:22.6382Z"
version: 21.2.4
- name: postgresql
repository: https://charts.bitnami.com/bitnami
version: 16.7.12
digest: sha256:c321c315a3d0be92cb0de7e676564b3f1f550a0ab58436149dfb02e6afb6d2f1
generated: "2025-06-17T10:58:01.903769+02:00"

View File

@@ -1,7 +1,7 @@
apiVersion: v2
name: open-webui
version: 6.0.0
appVersion: 0.6.0
version: 6.22.0
appVersion: 0.6.15
home: https://www.openwebui.com/
icon: >-
https://raw.githubusercontent.com/open-webui/open-webui/main/static/favicon.png
@@ -43,3 +43,8 @@ dependencies:
version: '>=20.6.2'
alias: redis-cluster
condition: redis-cluster.enabled
- name: postgresql
repository: https://charts.bitnami.com/bitnami
version: '>=15.5.38'
alias: postgresql
condition: postgresql.enabled

View File

@@ -1,6 +1,6 @@
# open-webui
![Version: 6.0.0](https://img.shields.io/badge/Version-6.0.0-informational?style=flat-square) ![AppVersion: 0.6.0](https://img.shields.io/badge/AppVersion-0.6.0-informational?style=flat-square)
![Version: 6.22.0](https://img.shields.io/badge/Version-6.22.0-informational?style=flat-square) ![AppVersion: 0.6.15](https://img.shields.io/badge/AppVersion-0.6.15-informational?style=flat-square)
Open WebUI: A User-Friendly Web Interface for Chat Interactions 👋
@@ -34,12 +34,62 @@ helm upgrade --install open-webui open-webui/open-webui
| Repository | Name | Version |
|------------|------|---------|
| https://apache.jfrog.io/artifactory/tika | tika | >=2.9.0 |
| https://charts.bitnami.com/bitnami | postgresql(postgresql) | >=15.5.38 |
| https://charts.bitnami.com/bitnami | redis-cluster(redis) | >=20.6.2 |
| https://helm.openwebui.com | pipelines | >=0.0.1 |
| https://otwld.github.io/ollama-helm/ | ollama | >=0.24.0 |
## Values
### Logging configuration
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| logging.components.audio | string | `""` | Set the log level for the Audio processing component |
| logging.components.comfyui | string | `""` | Set the log level for the ComfyUI Integration component |
| logging.components.config | string | `""` | Set the log level for the Configuration Management component |
| logging.components.db | string | `""` | Set the log level for the Database Operations (Peewee) component |
| logging.components.images | string | `""` | Set the log level for the Image Generation component |
| logging.components.main | string | `""` | Set the log level for the Main Application Execution component |
| logging.components.models | string | `""` | Set the log level for the Model Management component |
| logging.components.ollama | string | `""` | Set the log level for the Ollama Backend Integration component |
| logging.components.openai | string | `""` | Set the log level for the OpenAI API Integration component |
| logging.components.rag | string | `""` | Set the log level for the Retrieval-Augmented Generation (RAG) component |
| logging.components.webhook | string | `""` | Set the log level for the Authentication Webhook component |
| logging.level | string | `""` | Set the global log level ["notset", "debug", "info" (default), "warning", "error", "critical"] |
### Azure Storage configuration
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| persistence.azure.container | string | `""` | Sets the container name for Azure Storage |
| persistence.azure.endpointUrl | string | `""` | Sets the endpoint URL for Azure Storage |
| persistence.azure.key | string | `""` | Set the access key for Azure Storage (ignored if keyExistingSecret is set). Optional - if not provided, credentials will be taken from the environment. User credentials if run locally and Managed Identity if run in Azure services |
| persistence.azure.keyExistingSecret | string | `""` | Set the access key for Azure Storage from existing secret |
| persistence.azure.keyExistingSecretKey | string | `""` | Set the access key for Azure Storage from existing secret key |
### Google Cloud Storage configuration
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| persistence.gcs.appCredentialsJson | string | `""` | Contents of Google Application Credentials JSON file (ignored if appCredentialsJsonExistingSecret is set). Optional - if not provided, credentials will be taken from the environment. User credentials if run locally and Google Metadata server if run on a Google Compute Engine. File can be generated for a service account following this guide: https://developers.google.com/workspace/guides/create-credentials#service-account |
| persistence.gcs.appCredentialsJsonExistingSecret | string | `""` | Set the Google Application Credentials JSON file for Google Cloud Storage from existing secret |
| persistence.gcs.appCredentialsJsonExistingSecretKey | string | `""` | Set the Google Application Credentials JSON file for Google Cloud Storage from existing secret key |
| persistence.gcs.bucket | string | `""` | Sets the bucket name for Google Cloud Storage. Bucket must already exist |
### Amazon S3 Storage configuration
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| persistence.s3.accessKey | string | `""` | Sets the access key ID for S3 storage |
| persistence.s3.bucket | string | `""` | Sets the bucket name for S3 storage |
| persistence.s3.endpointUrl | string | `""` | Sets the endpoint url for S3 storage |
| persistence.s3.keyPrefix | string | `""` | Sets the key prefix for a S3 object |
| persistence.s3.region | string | `""` | Sets the region name for S3 storage |
| persistence.s3.secretKey | string | `""` | Sets the secret access key for S3 storage (ignored if secretKeyExistingSecret is set) |
| persistence.s3.secretKeyExistingSecret | string | `""` | Set the secret access key for S3 storage from existing k8s secret |
| persistence.s3.secretKeyExistingSecretKey | string | `""` | Set the secret access key for S3 storage from existing k8s secret key |
### SSO Configuration
| Key | Type | Default | Description |
@@ -55,24 +105,30 @@ helm upgrade --install open-webui open-webui/open-webui
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| sso.github.clientExistingSecret | string | `""` | GitHub OAuth client secret from existing secret |
| sso.github.clientExistingSecretKey | string | `""` | GitHub OAuth client secret key from existing secret |
| sso.github.clientId | string | `""` | GitHub OAuth client ID |
| sso.github.clientSecret | string | `""` | GitHub OAuth client secret |
| sso.github.clientSecret | string | `""` | GitHub OAuth client secret (ignored if clientExistingSecret is set) |
| sso.github.enabled | bool | `false` | Enable GitHub OAuth |
### Google OAuth configuration
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| sso.google.clientExistingSecret | string | `""` | Google OAuth client secret from existing secret |
| sso.google.clientExistingSecretKey | string | `""` | Google OAuth client secret key from existing secret |
| sso.google.clientId | string | `""` | Google OAuth client ID |
| sso.google.clientSecret | string | `""` | Google OAuth client secret |
| sso.google.clientSecret | string | `""` | Google OAuth client secret (ignored if clientExistingSecret is set) |
| sso.google.enabled | bool | `false` | Enable Google OAuth |
### Microsoft OAuth configuration
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| sso.microsoft.clientExistingSecret | string | `""` | Microsoft OAuth client secret from existing secret |
| sso.microsoft.clientExistingSecretKey | string | `""` | Microsoft OAuth client secret key from existing secret |
| sso.microsoft.clientId | string | `""` | Microsoft OAuth client ID |
| sso.microsoft.clientSecret | string | `""` | Microsoft OAuth client secret |
| sso.microsoft.clientSecret | string | `""` | Microsoft OAuth client secret (ignored if clientExistingSecret is set) |
| sso.microsoft.enabled | bool | `false` | Enable Microsoft OAuth |
| sso.microsoft.tenantId | string | `""` | Microsoft tenant ID - use 9188040d-6c67-4c5b-b112-36a304b66dad for personal accounts |
@@ -80,8 +136,10 @@ helm upgrade --install open-webui open-webui/open-webui
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| sso.oidc.clientExistingSecret | string | `""` | OICD client secret from existing secret |
| sso.oidc.clientExistingSecretKey | string | `""` | OIDC client secret key from existing secret |
| sso.oidc.clientId | string | `""` | OIDC client ID |
| sso.oidc.clientSecret | string | `""` | OIDC client secret |
| sso.oidc.clientSecret | string | `""` | OIDC client secret (ignored if clientExistingSecret is set) |
| sso.oidc.enabled | bool | `false` | Enable OIDC authentication |
| sso.oidc.providerName | string | `"SSO"` | Name of the provider to show on the UI |
| sso.oidc.providerUrl | string | `""` | OIDC provider well known URL |
@@ -109,10 +167,17 @@ helm upgrade --install open-webui open-webui/open-webui
|-----|------|---------|-------------|
| affinity | object | `{}` | Affinity for pod assignment |
| annotations | object | `{}` | |
| args | list | `[]` | Open WebUI container arguments (overrides default) |
| clusterDomain | string | `"cluster.local"` | Value of cluster domain |
| command | list | `[]` | Open WebUI container command (overrides default entrypoint) |
| commonEnvVars | list | `[]` | Env vars added to the Open WebUI deployment, common across environments. Most up-to-date environment variables can be found here: https://docs.openwebui.com/getting-started/env-configuration/ (caution: environment variables defined in both `extraEnvVars` and `commonEnvVars` will result in a conflict. Avoid duplicates) |
| containerSecurityContext | object | `{}` | Configure container security context ref: <https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-containe> |
| copyAppData.args | list | `[]` | Open WebUI copy-app-data init container arguments (overrides default) |
| copyAppData.command | list | `[]` | Open WebUI copy-app-data init container command (overrides default) |
| copyAppData.resources | object | `{}` | |
| databaseUrl | string | `""` | Configure database URL, needed to work with Postgres (example: `postgresql://<user>:<password>@<service>:<port>/<database>`), leave empty to use the default sqlite database |
| enableOpenaiApi | bool | `true` | Enables the use of OpenAI APIs |
| extraEnvFrom | list | `[]` | Env vars added from configmap or secret to the Open WebUI deployment. Most up-to-date environment variables can be found here: https://docs.openwebui.com/getting-started/env-configuration/ (caution: `extraEnvVars` will take precedence over the value from `extraEnvFrom`) |
| extraEnvVars | list | `[{"name":"OPENAI_API_KEY","value":"0p3n-w3bu!"}]` | Env vars added to the Open WebUI deployment. 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 |
| extraInitContainers | list | `[]` | Additional init containers to add to the deployment/statefulset ref: <https://kubernetes.io/docs/concepts/workloads/pods/init-containers/> |
@@ -125,6 +190,7 @@ helm upgrade --install open-webui open-webui/open-webui
| ingress.class | string | `""` | |
| ingress.enabled | bool | `false` | |
| ingress.existingSecret | string | `""` | |
| ingress.extraLabels | object | `{}` | Additional custom labels to add to the Ingress metadata Useful for tagging, selecting, or applying policies to the Ingress via labels. |
| ingress.host | string | `"chat.example.com"` | |
| ingress.tls | bool | `false` | |
| livenessProbe | object | `{}` | Probe for liveness of the Open WebUI container ref: <https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes> |
@@ -144,6 +210,7 @@ helm upgrade --install open-webui open-webui/open-webui
| persistence.annotations | object | `{}` | |
| persistence.enabled | bool | `true` | |
| persistence.existingClaim | string | `""` | Use existingClaim if you want to re-use an existing Open WebUI PVC instead of creating a new one |
| persistence.provider | string | `"local"` | Sets the storage provider, availables values are `local`, `s3`, `gcs` or `azure` |
| persistence.selector | object | `{}` | |
| persistence.size | string | `"2Gi"` | |
| persistence.storageClass | string | `""` | |
@@ -153,6 +220,7 @@ helm upgrade --install open-webui open-webui/open-webui
| podAnnotations | object | `{}` | |
| podLabels | object | `{}` | |
| podSecurityContext | object | `{}` | Configure pod security context ref: <https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container> |
| postgresql | object | `{"architecture":"standalone","auth":{"database":"open-webui","password":"0p3n-w3bu!","postgresPassword":"0p3n-w3bu!","username":"open-webui"},"enabled":false,"fullnameOverride":"open-webui-postgres","primary":{"persistence":{"size":"1Gi"},"resources":{"limits":{"cpu":"500m","memory":"512Mi"},"requests":{"cpu":"250m","memory":"256Mi"}}}}` | Postgresql configuration (see. https://artifacthub.io/packages/helm/bitnami/postgresql) |
| readinessProbe | object | `{}` | Probe for readiness of the Open WebUI container ref: <https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes> |
| redis-cluster | object | `{"auth":{"enabled":false},"enabled":false,"fullnameOverride":"open-webui-redis","replica":{"replicaCount":3}}` | Deploys a Redis cluster with subchart 'redis' from bitnami |
| redis-cluster.auth | object | `{"enabled":false}` | Redis Authentication |
@@ -178,7 +246,8 @@ helm upgrade --install open-webui open-webui/open-webui
| volumes | list | `[]` | Configure pod volumes ref: <https://kubernetes.io/docs/tasks/configure-pod-container/configure-volume-storage/> |
| websocket.enabled | bool | `false` | Enables websocket support in Open WebUI with env `ENABLE_WEBSOCKET_SUPPORT` |
| websocket.manager | string | `"redis"` | Specifies the websocket manager to use with env `WEBSOCKET_MANAGER`: redis (default) |
| websocket.redis | object | `{"affinity":{},"annotations":{},"args":[],"command":[],"enabled":true,"image":{"pullPolicy":"IfNotPresent","repository":"redis","tag":"7.4.2-alpine3.21"},"labels":{},"name":"open-webui-redis","pods":{"annotations":{}},"resources":{},"securityContext":{},"service":{"annotations":{},"containerPort":6379,"labels":{},"nodePort":"","port":6379,"type":"ClusterIP"},"tolerations":[]}` | Deploys a redis |
| websocket.nodeSelector | object | `{}` | Node selector for websocket pods |
| websocket.redis | object | `{"affinity":{},"annotations":{},"args":[],"command":[],"enabled":true,"image":{"pullPolicy":"IfNotPresent","repository":"redis","tag":"7.4.2-alpine3.21"},"labels":{},"name":"open-webui-redis","pods":{"annotations":{},"labels":{}},"resources":{},"securityContext":{},"service":{"annotations":{},"containerPort":6379,"labels":{},"nodePort":"","port":6379,"type":"ClusterIP"},"tolerations":[]}` | Deploys a redis |
| websocket.redis.affinity | object | `{}` | Redis affinity for pod assignment |
| websocket.redis.annotations | object | `{}` | Redis annotations |
| websocket.redis.args | list | `[]` | Redis arguments (overrides default) |
@@ -187,8 +256,9 @@ helm upgrade --install open-webui open-webui/open-webui
| websocket.redis.image | object | `{"pullPolicy":"IfNotPresent","repository":"redis","tag":"7.4.2-alpine3.21"}` | Redis image |
| websocket.redis.labels | object | `{}` | Redis labels |
| websocket.redis.name | string | `"open-webui-redis"` | Redis name |
| websocket.redis.pods | object | `{"annotations":{}}` | Redis pod |
| websocket.redis.pods | object | `{"annotations":{},"labels":{}}` | Redis pod |
| websocket.redis.pods.annotations | object | `{}` | Redis pod annotations |
| websocket.redis.pods.labels | object | `{}` | Redis pod labels |
| websocket.redis.resources | object | `{}` | Redis resources |
| websocket.redis.securityContext | object | `{}` | Redis security context |
| websocket.redis.service | object | `{"annotations":{},"containerPort":6379,"labels":{},"nodePort":"","port":6379,"type":"ClusterIP"}` | Redis service |

View File

@@ -169,3 +169,88 @@ Create labels to include on chart all websocket resources
{{ include "base.labels" . }}
{{ include "websocket.redis.selectorLabels" . }}
{{- end }}
{{/*
Validate SSO ClientSecret to be set literally or via Secret
*/}}
{{- define "sso.validateClientSecret" -}}
{{- $provider := .provider }}
{{- $values := .values }}
{{- if and (empty (index $values $provider "clientSecret")) (empty (index $values $provider "clientExistingSecret")) }}
{{- fail (printf "You must provide either .Values.sso.%s.clientSecret or .Values.sso.%s.clientExistingSecret" $provider $provider) }}
{{- end }}
{{- end }}
{{- /*
Fail template rendering if invalid log component
*/ -}}
{{- define "logging.isValidComponent" -}}
{{- $component := . | lower -}}
{{- $validComponents := dict
"audio" true
"comfyui" true
"config" true
"db" true
"images" true
"main" true
"models" true
"ollama" true
"openai" true
"rag" true
"webhook" true
-}}
{{- hasKey $validComponents $component -}}
{{- end }}
{{- define "logging.assertValidComponent" -}}
{{- $component := lower . -}}
{{- $res := include "logging.isValidComponent" $component }}
{{- if ne $res "true" }}
{{- fail (printf "Invalid logging component name: '%s'. Valid names: audio, comfyui, config, db, images, main, models, ollama, openai, rag, webhook" $component) }}
{{- end }}
{{- end }}
{{- /*
Fail template rendering if invalid log level
*/ -}}
{{- define "logging.assertValidLevel" -}}
{{- $level := lower . }}
{{- $validLevels := dict "notset" true "debug" true "info" true "warning" true "error" true "critical" true }}
{{- if not (hasKey $validLevels $level) }}
{{- fail (printf "Invalid log level: '%s'. Valid values are: notset, debug, info, warning, error, critical" $level) }}
{{- end }}
{{- end }}
{{- /*
Render a logging env var for a component, validating value
*/ -}}
{{- define "logging.componentEnvVar" -}}
{{- $name := .componentName }}
{{- $level := .logLevel }}
{{- include "logging.assertValidComponent" $name -}}
{{- include "logging.assertValidLevel" $level }}
- name: {{ printf "%s_LOG_LEVEL" (upper $name) | quote }}
value: {{ $level | quote | trim }}
{{- end }}
{{- /*
Constructs a string containing the URLs of the Open WebUI based on the ingress configuration
used to populate the variable WEBUI_URL
*/ -}}
{{- define "openweb-ui.url" -}}
{{- $url := "" -}}
{{- range .Values.extraEnvVars }}
{{- if and (eq .name "WEBUI_URL") .value }}
{{- $url = .value }}
{{- end }}
{{- end }}
{{- if not $url }}
{{- $proto := "http" -}}
{{- if .Values.ingress.tls }}
{{- $proto = "https" -}}
{{- end }}
{{- $url = printf "%s://%s" $proto .Values.ingress.host }}
{{- end }}
{{- $url }}
{{- end }}

View File

@@ -6,6 +6,9 @@ metadata:
namespace: {{ include "open-webui.namespace" . }}
labels:
{{- include "open-webui.labels" . | nindent 4 }}
{{- with .Values.ingress.extraLabels }}
{{- toYaml . | nindent 4 }}
{{- end }}
{{- with .Values.ingress.annotations }}
annotations:
{{- toYaml . | nindent 4 }}

View File

@@ -1,4 +1,4 @@
{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) }}
{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) (eq .Values.persistence.provider "local") }}
apiVersion: v1
kind: PersistentVolumeClaim
metadata:

View File

@@ -21,6 +21,9 @@ spec:
metadata:
labels:
{{- include "websocket.redis.labels" . | nindent 8 }}
{{- with .Values.websocket.redis.pods.labels }}
{{- toYaml . | nindent 8 }}
{{- end }}
annotations:
{{- with .Values.websocket.redis.pods.annotations }}
{{- toYaml . | nindent 8 }}
@@ -61,6 +64,10 @@ spec:
securityContext:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.websocket.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 8 }}
{{- end }}
---
apiVersion: v1
kind: Service

View File

@@ -1,5 +1,5 @@
apiVersion: apps/v1
{{- if .Values.persistence.enabled }}
{{- if and .Values.persistence.enabled (eq .Values.persistence.provider "local") }}
kind: StatefulSet
{{- else }}
kind: Deployment
@@ -15,14 +15,14 @@ metadata:
{{- end }}
spec:
replicas: {{ .Values.replicaCount }}
{{- if .Values.persistence.enabled }}
{{- if and .Values.persistence.enabled (eq .Values.persistence.provider "local") }}
serviceName: {{ include "open-webui.name" . }}
{{- end }}
selector:
matchLabels:
{{- include "open-webui.selectorLabels" . | nindent 6 }}
{{- if .Values.strategy }}
{{- if .Values.persistence.enabled }}
{{- if and .Values.persistence.enabled (eq .Values.persistence.provider "local") }}
updateStrategy:
{{- toYaml .Values.strategy | nindent 4 }}
{{- else }}
@@ -52,7 +52,12 @@ spec:
image: {{ .repository }}:{{ .tag | default $.Chart.AppVersion }}
imagePullPolicy: {{ .pullPolicy }}
{{- end }}
command: ['sh', '-c', 'cp -R -n /app/backend/data/* /tmp/app-data/']
command:
{{- toYaml (.Values.copyAppData.command | default (list "sh" "-c" "cp -R -n /app/backend/data/* /tmp/app-data/")) | nindent 10 }}
{{- with .Values.copyAppData.args }}
args:
{{- toYaml . | nindent 10 }}
{{- end }}
{{- with .Values.containerSecurityContext }}
securityContext:
{{- toYaml . | nindent 10 }}
@@ -90,6 +95,14 @@ spec:
image: {{ .repository }}:{{ .tag | default $.Chart.AppVersion }}
imagePullPolicy: {{ .pullPolicy }}
{{- end }}
{{- with .Values.command }}
command:
{{- toYaml . | nindent 10 }}
{{- end }}
{{- with .Values.args }}
args:
{{- toYaml . | nindent 10 }}
{{- end }}
ports:
- name: http
containerPort: {{ .Values.service.containerPort }}
@@ -119,6 +132,16 @@ spec:
{{- toYaml . | nindent 8 }}
{{- end }}
env:
{{- $hasCustomWebUIUrl := false }}
{{- range .Values.extraEnvVars }}
{{- if eq .name "WEBUI_URL" }}
{{- $hasCustomWebUIUrl = true }}
{{- end }}
{{- end }}
{{- if and .Values.ingress.enabled (not $hasCustomWebUIUrl) }}
- name: WEBUI_URL
value: {{ include "openweb-ui.url" . | quote }}
{{- end }}
{{- if .Values.ollamaUrlsFromExtraEnv}}
{{- else if or .Values.ollamaUrls .Values.ollama.enabled }}
- name: "OLLAMA_BASE_URLS"
@@ -147,15 +170,65 @@ spec:
- name: "ENABLE_OPENAI_API"
value: "False"
{{- end }}
{{- if .Values.extraEnvVars }}
{{- toYaml .Values.extraEnvVars | nindent 8 }}
{{- end }}
{{- if .Values.tika.enabled }}
- name: "CONTENT_EXTRACTION_ENGINE"
value: "Tika"
- name: "TIKA_SERVER_URL"
value: http://{{ .Chart.Name }}-tika:9998
{{- end }}
{{- if eq .Values.persistence.provider "s3" }}
- name: "STORAGE_PROVIDER"
value: {{ .Values.persistence.provider }}
- name: "S3_ACCESS_KEY_ID"
value: {{ .Values.persistence.s3.accessKey }}
- name: "S3_SECRET_ACCESS_KEY"
{{- if .Values.persistence.s3.secretKeyExistingSecret }}
valueFrom:
secretKeyRef:
name: {{ .Values.persistence.s3.secretKeyExistingSecret }}
key: {{ .Values.persistence.s3.secretKeyExistingSecretKey }}
{{- else }}
value: {{ .Values.persistence.s3.secretKey }}
{{- end }}
- name: "S3_ENDPOINT_URL"
value: {{ .Values.persistence.s3.endpointUrl }}
- name: "S3_BUCKET_NAME"
value: {{ .Values.persistence.s3.bucket }}
- name: "S3_REGION_NAME"
value: {{ .Values.persistence.s3.region }}
- name: "S3_KEY_PREFIX"
value: {{ .Values.persistence.s3.keyPrefix }}
{{- else if eq .Values.persistence.provider "gcs" }}
- name: "STORAGE_PROVIDER"
value: {{ .Values.persistence.provider }}
- name: "GOOGLE_APPLICATION_CREDENTIALS_JSON"
{{- if .Values.persistence.gcs.appCredentialsJsonExistingSecret }}
valueFrom:
secretKeyRef:
name: {{ .Values.persistence.gcs.appCredentialsJsonExistingSecret }}
key: {{ .Values.persistence.gcs.appCredentialsJsonExistingSecretKey }}
{{- else }}
value: {{ .Values.persistence.gcs.appCredentialsJson }}
{{- end }}
- name: "GCS_BUCKET_NAME"
value: {{ .Values.persistence.gcs.bucket }}
{{- else if eq .Values.persistence.provider "azure" }}
- name: "STORAGE_PROVIDER"
value: {{ .Values.persistence.provider }}
- name: "AZURE_STORAGE_ENDPOINT"
value: {{ .Values.persistence.azure.endpointUrl }}
- name: "AZURE_STORAGE_CONTAINER_NAME"
value: {{ .Values.persistence.azure.container }}
- name: "AZURE_STORAGE_KEY"
{{- if .Values.persistence.azure.keyExistingSecret }}
valueFrom:
secretKeyRef:
name: {{ .Values.persistence.azure.keyExistingSecret }}
key: {{ .Values.persistence.azure.keyExistingSecretKey }}
{{- else }}
value: {{ .Values.persistence.azure.key }}
{{- end }}
{{- end }}
{{- if .Values.websocket.enabled }}
- name: "ENABLE_WEBSOCKET_SUPPORT"
value: "True"
@@ -164,6 +237,10 @@ spec:
- name: "WEBSOCKET_REDIS_URL"
value: {{ .Values.websocket.url | quote }}
{{- end }}
{{- if or .Values.postgresql.enabled .Values.databaseUrl }}
- name: "DATABASE_URL"
value: {{ .Values.databaseUrl | default (printf "postgresql://%s:%s@%s:%s/%s" .Values.postgresql.auth.username .Values.postgresql.auth.password .Values.postgresql.fullnameOverride "5432" .Values.postgresql.auth.database) }}
{{- end }}
{{- if .Values.sso.enabled }}
{{- if .Values.sso.enableSignup }}
- name: "ENABLE_OAUTH_SIGNUP"
@@ -176,28 +253,60 @@ spec:
{{- if .Values.sso.google.enabled }}
- name: "GOOGLE_CLIENT_ID"
value: {{ .Values.sso.google.clientId | quote }}
{{- include "sso.validateClientSecret" (dict "provider" "google" "values" .Values.sso) }}
- name: "GOOGLE_CLIENT_SECRET"
{{- if .Values.sso.google.clientExistingSecret }}
valueFrom:
secretKeyRef:
name: {{ .Values.sso.google.clientExistingSecret | quote }}
key: {{ .Values.sso.google.clientExistingSecretKey | quote }}
{{- else }}
value: {{ .Values.sso.google.clientSecret | quote }}
{{- end }}
{{- end }}
{{- if .Values.sso.microsoft.enabled }}
- name: "MICROSOFT_CLIENT_ID"
value: {{ .Values.sso.microsoft.clientId | quote }}
{{- include "sso.validateClientSecret" (dict "provider" "microsoft" "values" .Values.sso) }}
- name: "MICROSOFT_CLIENT_SECRET"
{{- if .Values.sso.microsoft.clientExistingSecret }}
valueFrom:
secretKeyRef:
name: {{ .Values.sso.microsoft.clientExistingSecret | quote }}
key: {{ .Values.sso.microsoft.clientExistingSecretKey | quote }}
{{- else }}
value: {{ .Values.sso.microsoft.clientSecret | quote }}
{{- end }}
- name: "MICROSOFT_CLIENT_TENANT_ID"
value: {{ .Values.sso.microsoft.tenantId | quote }}
{{- end }}
{{- if .Values.sso.github.enabled }}
- name: "GITHUB_CLIENT_ID"
value: {{ .Values.sso.github.clientId | quote }}
{{- include "sso.validateClientSecret" (dict "provider" "github" "values" .Values.sso) }}
- name: "GITHUB_CLIENT_SECRET"
{{- if .Values.sso.github.clientExistingSecret }}
valueFrom:
secretKeyRef:
name: {{ .Values.sso.github.clientExistingSecret | quote }}
key: {{ .Values.sso.github.clientExistingSecretKey | quote }}
{{- else }}
value: {{ .Values.sso.github.clientSecret | quote }}
{{- end }}
{{- end }}
{{- if .Values.sso.oidc.enabled }}
- name: "OAUTH_CLIENT_ID"
value: {{ .Values.sso.oidc.clientId | quote }}
{{- include "sso.validateClientSecret" (dict "provider" "oidc" "values" .Values.sso) }}
- name: "OAUTH_CLIENT_SECRET"
{{- if .Values.sso.oidc.clientExistingSecret }}
valueFrom:
secretKeyRef:
name: {{ .Values.sso.oidc.clientExistingSecret | quote }}
key: {{ .Values.sso.oidc.clientExistingSecretKey | quote }}
{{- else }}
value: {{ .Values.sso.oidc.clientSecret | quote }}
{{- end }}
- name: "OPENID_PROVIDER_URL"
value: {{ .Values.sso.oidc.providerUrl | quote }}
- name: "OAUTH_PROVIDER_NAME"
@@ -234,6 +343,29 @@ spec:
{{- end }}
{{- end }}
{{- end }}
{{- if .Values.logging.level }}
{{- include "logging.assertValidLevel" .Values.logging.level }}
- name: "GLOBAL_LOG_LEVEL"
value: {{ .Values.logging.level | quote }}
{{- end }}
{{- if .Values.logging.components }}
{{- range $name, $level := .Values.logging.components }}
{{- if $level }}
{{- include "logging.componentEnvVar" (dict "componentName" $name "logLevel" $level) | indent 8 }}
{{- end }}
{{- end }}
{{- end }}
{{- if .Values.extraEnvVars }}
{{- toYaml .Values.extraEnvVars | nindent 8 }}
{{- end }}
{{- if .Values.commonEnvVars }}
{{- toYaml .Values.commonEnvVars | nindent 8 }}
{{- end }}
{{- if .Values.extraEnvFrom }}
envFrom:
{{- toYaml .Values.extraEnvFrom | nindent 8 }}
{{- end }}
tty: true
{{- with .Values.nodeSelector }}
nodeSelector:
@@ -260,7 +392,7 @@ spec:
- name: data
persistentVolumeClaim:
claimName: {{ .Values.persistence.existingClaim }}
{{- else if not .Values.persistence.enabled }}
{{- else if or (not .Values.persistence.enabled) (not (eq .Values.persistence.provider "local")) }}
- name: data
emptyDir: {}
{{- else if and .Values.persistence.enabled (not .Values.persistence.existingClaim) }}

View File

@@ -44,6 +44,8 @@ websocket:
manager: redis
# -- Specifies the URL of the Redis instance for websocket communication. Template with `redis://[:<password>@]<hostname>:<port>/<db>`
url: redis://open-webui-redis:6379/0
# -- Node selector for websocket pods
nodeSelector: {}
# -- Deploys a redis
redis:
# -- Enable redis installation
@@ -56,6 +58,8 @@ websocket:
annotations: {}
# -- Redis pod
pods:
# -- Redis pod labels
labels: {}
# -- Redis pod annotations
annotations: {}
# -- Redis image
@@ -126,6 +130,11 @@ image:
tag: ""
pullPolicy: "IfNotPresent"
# -- Open WebUI container command (overrides default entrypoint)
command: []
# -- Open WebUI container arguments (overrides default)
args: []
serviceAccount:
enable: true
name: ""
@@ -172,6 +181,11 @@ startupProbe: {}
resources: {}
copyAppData:
# -- Open WebUI copy-app-data init container command (overrides default)
command: []
# -- Open WebUI copy-app-data init container arguments (overrides default)
args: []
resources: {}
managedCertificate:
@@ -198,6 +212,13 @@ ingress:
additionalHosts: []
tls: false
existingSecret: ""
# -- Additional custom labels to add to the Ingress metadata
# Useful for tagging, selecting, or applying policies to the Ingress via labels.
extraLabels: {}
# extraLabels:
# app.kubernetes.io/environment: "staging"
persistence:
enabled: true
size: 2Gi
@@ -211,6 +232,62 @@ persistence:
storageClass: ""
selector: {}
annotations: {}
# -- Sets the storage provider, availables values are `local`, `s3`, `gcs` or `azure`
provider: local
s3:
# -- Sets the access key ID for S3 storage
# @section -- Amazon S3 Storage configuration
accessKey: ""
# -- Sets the secret access key for S3 storage (ignored if secretKeyExistingSecret is set)
# @section -- Amazon S3 Storage configuration
secretKey: ""
# -- Set the secret access key for S3 storage from existing k8s secret
# @section -- Amazon S3 Storage configuration
secretKeyExistingSecret: ""
# -- Set the secret access key for S3 storage from existing k8s secret key
# @section -- Amazon S3 Storage configuration
secretKeyExistingSecretKey: ""
# -- Sets the endpoint url for S3 storage
# @section -- Amazon S3 Storage configuration
endpointUrl: ""
# -- Sets the region name for S3 storage
# @section -- Amazon S3 Storage configuration
region: ""
# -- Sets the bucket name for S3 storage
# @section -- Amazon S3 Storage configuration
bucket: ""
# -- Sets the key prefix for a S3 object
# @section -- Amazon S3 Storage configuration
keyPrefix: ""
gcs:
# -- Contents of Google Application Credentials JSON file (ignored if appCredentialsJsonExistingSecret is set). Optional - if not provided, credentials will be taken from the environment. User credentials if run locally and Google Metadata server if run on a Google Compute Engine. File can be generated for a service account following this guide: https://developers.google.com/workspace/guides/create-credentials#service-account
# @section -- Google Cloud Storage configuration
appCredentialsJson: ""
# -- Set the Google Application Credentials JSON file for Google Cloud Storage from existing secret
# @section -- Google Cloud Storage configuration
appCredentialsJsonExistingSecret: ""
# -- Set the Google Application Credentials JSON file for Google Cloud Storage from existing secret key
# @section -- Google Cloud Storage configuration
appCredentialsJsonExistingSecretKey: ""
# -- Sets the bucket name for Google Cloud Storage. Bucket must already exist
# @section -- Google Cloud Storage configuration
bucket: ""
azure:
# -- Sets the endpoint URL for Azure Storage
# @section -- Azure Storage configuration
endpointUrl: ""
# -- Sets the container name for Azure Storage
# @section -- Azure Storage configuration
container: ""
# -- Set the access key for Azure Storage (ignored if keyExistingSecret is set). Optional - if not provided, credentials will be taken from the environment. User credentials if run locally and Managed Identity if run in Azure services
# @section -- Azure Storage configuration
key: ""
# -- Set the access key for Azure Storage from existing secret
# @section -- Azure Storage configuration
keyExistingSecret: ""
# -- Set the access key for Azure Storage from existing secret key
# @section -- Azure Storage configuration
keyExistingSecretKey: ""
# -- Node labels for pod assignment.
nodeSelector: {}
@@ -266,6 +343,18 @@ extraEnvVars:
# - name: OLLAMA_DEBUG
# value: "1"
# -- Env vars added to the Open WebUI deployment, common across environments. Most up-to-date environment variables can be found here: https://docs.openwebui.com/getting-started/env-configuration/ (caution: environment variables defined in both `extraEnvVars` and `commonEnvVars` will result in a conflict. Avoid duplicates)
commonEnvVars: []
# - name: RAG_EMBEDDING_ENGINE
# value: "openai"
# -- Env vars added from configmap or secret to the Open WebUI deployment. Most up-to-date environment variables can be found here: https://docs.openwebui.com/getting-started/env-configuration/ (caution: `extraEnvVars` will take precedence over the value from `extraEnvFrom`)
extraEnvFrom: []
# - configMapRef:
# name: my-config
# - secretRef:
# name: my-secret
# -- Configure runtime class
# ref: <https://kubernetes.io/docs/concepts/containers/runtime-class/>
runtimeClassName: ""
@@ -348,9 +437,15 @@ sso:
# -- Google OAuth client ID
# @section -- Google OAuth configuration
clientId: ""
# -- Google OAuth client secret
# -- Google OAuth client secret (ignored if clientExistingSecret is set)
# @section -- Google OAuth configuration
clientSecret: ""
# -- Google OAuth client secret from existing secret
# @section -- Google OAuth configuration
clientExistingSecret: ""
# -- Google OAuth client secret key from existing secret
# @section -- Google OAuth configuration
clientExistingSecretKey: ""
microsoft:
# -- Enable Microsoft OAuth
@@ -359,9 +454,15 @@ sso:
# -- Microsoft OAuth client ID
# @section -- Microsoft OAuth configuration
clientId: ""
# -- Microsoft OAuth client secret
# -- Microsoft OAuth client secret (ignored if clientExistingSecret is set)
# @section -- Microsoft OAuth configuration
clientSecret: ""
# -- Microsoft OAuth client secret from existing secret
# @section -- Microsoft OAuth configuration
clientExistingSecret: ""
# -- Microsoft OAuth client secret key from existing secret
# @section -- Microsoft OAuth configuration
clientExistingSecretKey: ""
# -- Microsoft tenant ID - use 9188040d-6c67-4c5b-b112-36a304b66dad for personal accounts
# @section -- Microsoft OAuth configuration
tenantId: ""
@@ -373,9 +474,15 @@ sso:
# -- GitHub OAuth client ID
# @section -- GitHub OAuth configuration
clientId: ""
# -- GitHub OAuth client secret
# -- GitHub OAuth client secret (ignored if clientExistingSecret is set)
# @section -- GitHub OAuth configuration
clientSecret: ""
# -- GitHub OAuth client secret from existing secret
# @section -- GitHub OAuth configuration
clientExistingSecret: ""
# -- GitHub OAuth client secret key from existing secret
# @section -- GitHub OAuth configuration
clientExistingSecretKey: ""
oidc:
# -- Enable OIDC authentication
@@ -384,9 +491,15 @@ sso:
# -- OIDC client ID
# @section -- OIDC configuration
clientId: ""
# -- OIDC client secret
# -- OIDC client secret (ignored if clientExistingSecret is set)
# @section -- OIDC configuration
clientSecret: ""
# -- OICD client secret from existing secret
# @section -- OIDC configuration
clientExistingSecret: ""
# -- OIDC client secret key from existing secret
# @section -- OIDC configuration
clientExistingSecretKey: ""
# -- OIDC provider well known URL
# @section -- OIDC configuration
providerUrl: ""
@@ -433,3 +546,70 @@ extraResources:
# name: example-configmap
# data:
# example-key: example-value
# -- Configure database URL, needed to work with Postgres (example: `postgresql://<user>:<password>@<service>:<port>/<database>`), leave empty to use the default sqlite database
databaseUrl: ""
# -- Postgresql configuration (see. https://artifacthub.io/packages/helm/bitnami/postgresql)
postgresql:
enabled: false
fullnameOverride: open-webui-postgres
architecture: standalone
auth:
database: open-webui
postgresPassword: 0p3n-w3bu!
username: open-webui
password: 0p3n-w3bu!
primary:
persistence:
size: 1Gi
resources:
requests:
memory: 256Mi
cpu: 250m
limits:
memory: 512Mi
cpu: 500m
# Configure Application logging levels (see. https://docs.openwebui.com/getting-started/advanced-topics/logging#-logging-levels-explained)
logging:
# -- Set the global log level ["notset", "debug", "info" (default), "warning", "error", "critical"]
# @section -- Logging configuration
level: ""
# Optional granularity: override log levels per subsystem/component
# if not set, it will use the global level (see. https://docs.openwebui.com/getting-started/advanced-topics/logging#%EF%B8%8F-appbackend-specific-logging-levels)
components:
# -- Set the log level for the Audio processing component
# @section -- Logging configuration
audio: ""
# -- Set the log level for the ComfyUI Integration component
# @section -- Logging configuration
comfyui: ""
# -- Set the log level for the Configuration Management component
# @section -- Logging configuration
config: ""
# -- Set the log level for the Database Operations (Peewee) component
# @section -- Logging configuration
db: ""
# -- Set the log level for the Image Generation component
# @section -- Logging configuration
images: ""
# -- Set the log level for the Main Application Execution component
# @section -- Logging configuration
main: ""
# -- Set the log level for the Model Management component
# @section -- Logging configuration
models: ""
# -- Set the log level for the Ollama Backend Integration component
# @section -- Logging configuration
ollama: ""
# -- Set the log level for the OpenAI API Integration component
# @section -- Logging configuration
openai: ""
# -- Set the log level for the Retrieval-Augmented Generation (RAG) component
# @section -- Logging configuration
rag: ""
# -- Set the log level for the Authentication Webhook component
# @section -- Logging configuration
webhook: ""

View File

@@ -1,6 +1,6 @@
apiVersion: v2
name: pipelines
version: 0.5.0
version: 0.7.0
appVersion: "alpha"
home: https://github.com/open-webui/pipelines

View File

@@ -1,6 +1,6 @@
# pipelines
![Version: 0.5.0](https://img.shields.io/badge/Version-0.5.0-informational?style=flat-square) ![AppVersion: alpha](https://img.shields.io/badge/AppVersion-alpha-informational?style=flat-square)
![Version: 0.7.0](https://img.shields.io/badge/Version-0.7.0-informational?style=flat-square) ![AppVersion: alpha](https://img.shields.io/badge/AppVersion-alpha-informational?style=flat-square)
Pipelines: UI-Agnostic OpenAI API Plugin Framework
@@ -33,6 +33,8 @@ helm upgrade --install open-webui open-webui/pipelines
| affinity | object | `{}` | Affinity for pod assignment |
| annotations | object | `{}` | |
| clusterDomain | string | `"cluster.local"` | Value of cluster domain |
| commonEnvVars | list | `[]` | Additional environments variables on the output Deployment definition, common across environments |
| 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":"PIPELINES_URLS","value":"https://github.com/open-webui/pipelines/blob/main/examples/filters/detoxify_filter_pipeline.py"}]` | Additional environments variables on the output Deployment definition. These are used to pull initial Pipeline files, and help configure Pipelines with required values (e.g. Langfuse API keys) |
| extraEnvVars[0] | object | `{"name":"PIPELINES_URLS","value":"https://github.com/open-webui/pipelines/blob/main/examples/filters/detoxify_filter_pipeline.py"}` | Example pipeline to pull and load on deployment startup, see current pipelines here: https://github.com/open-webui/pipelines/blob/main/examples |
| extraInitContainers | list | `[]` | Additional init containers to add to the deployment ref: <https://kubernetes.io/docs/concepts/workloads/pods/init-containers/> |
@@ -60,6 +62,7 @@ helm upgrade --install open-webui open-webui/pipelines
| persistence.storageClass | string | `""` | |
| podAnnotations | object | `{}` | |
| podLabels | object | `{}` | |
| podSecurityContext | object | `{}` | Configure pod security context ref: <https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container> |
| replicaCount | int | `1` | |
| resources | object | `{}` | |
| service.annotations | object | `{}` | |

View File

@@ -43,6 +43,10 @@ spec:
{{- if .Values.serviceAccount.enable }}
serviceAccountName: {{ .Values.serviceAccount.name | default (include "pipelines.name" .) }}
{{- end }}
{{- with .Values.podSecurityContext }}
securityContext:
{{- toYaml . | nindent 8 }}
{{- end }}
containers:
- name: {{ .Chart.Name }}
{{- with .Values.image }}
@@ -55,6 +59,10 @@ spec:
{{- with .Values.resources }}
resources: {{- toYaml . | nindent 10 }}
{{- end }}
{{- with .Values.containerSecurityContext }}
securityContext:
{{- toYaml . | nindent 10 }}
{{- end }}
volumeMounts:
- name: data
mountPath: /app/pipelines
@@ -65,6 +73,9 @@ spec:
{{- if .Values.extraEnvVars }}
{{- toYaml .Values.extraEnvVars | nindent 8 }}
{{- end }}
{{- if .Values.commonEnvVars }}
{{- toYaml .Values.commonEnvVars | nindent 8 }}
{{- end }}
tty: true
{{- with .Values.nodeSelector }}
nodeSelector:
@@ -97,4 +108,4 @@ spec:
{{- end }}
{{- with .Values.volumes }}
{{- toYaml . | nindent 6 }}
{{- end }}
{{- end }}

View File

@@ -46,6 +46,31 @@ serviceAccount:
enable: true
automountServiceAccountToken: false
# -- Configure pod security context
# ref: <https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container>
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"
# -- Node labels for pod assignment.
nodeSelector: {}
@@ -93,6 +118,9 @@ extraEnvVars:
# - name: LANGFUSE_HOST
# value: https://us.cloud.langfuse.com
# -- Additional environments variables on the output Deployment definition, common across environments.
commonEnvVars: []
# -- Configure container volume mounts
# ref: <https://kubernetes.io/docs/tasks/configure-pod-container/configure-volume-storage/>
volumeMounts: []