Compare commits

...

68 Commits

Author SHA1 Message Date
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
0xThresh.eth
e5ed86fb0a feat: Update to v0.6.0 2025-03-31 21:17:42 -06:00
20 changed files with 536 additions and 38 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

@@ -2,9 +2,6 @@
## How to Contribute
> [!WARNING]
> There is currently a bug in the Helm Chart Releaser Github Action that prevents you from deploying more than one chart on a single run. The best workaround for now is to ensure that pushes to `main` only include changes to a single chart. If you're contributing to more than one chart, please do it in separate PRs until the upstream issue is fixed, or until we can fork and fix the action ourselves.
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).

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.1.11
- name: postgresql
repository: https://charts.bitnami.com/bitnami
version: 16.7.6
digest: sha256:f39c2f265e59a8f64ee5131a69d56d0a4b4993ce63b86f0b90018b7828c3fe5f
generated: "2025-05-30T11:59:07.637437-06:00"

View File

@@ -1,7 +1,7 @@
apiVersion: v2
name: open-webui
version: 5.26.0
appVersion: 0.5.20
version: 6.19.0
appVersion: 0.6.13
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: 5.26.0](https://img.shields.io/badge/Version-5.26.0-informational?style=flat-square) ![AppVersion: 0.5.20](https://img.shields.io/badge/AppVersion-0.5.20-informational?style=flat-square)
![Version: 6.19.0](https://img.shields.io/badge/Version-6.19.0-informational?style=flat-square) ![AppVersion: 0.6.13](https://img.shields.io/badge/AppVersion-0.6.13-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 |
@@ -110,9 +168,12 @@ 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 |
| 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.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 +186,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 +206,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 +216,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 |
@@ -163,7 +227,7 @@ helm upgrade --install open-webui open-webui/open-webui
| redis-cluster.replica.replicaCount | int | `3` | Number of Redis replica instances |
| replicaCount | int | `1` | |
| resources | object | `{}` | |
| runtimeClassName | string | `""` | Allows changing the Runtime Class. For ex. to "nvidia" if nvidia container runtime is installed but not default. |
| runtimeClassName | string | `""` | Configure runtime class ref: <https://kubernetes.io/docs/concepts/containers/runtime-class/> |
| service | object | `{"annotations":{},"containerPort":8080,"labels":{},"loadBalancerClass":"","nodePort":"","port":80,"type":"ClusterIP"}` | Service values to expose Open WebUI pods to cluster |
| serviceAccount.annotations | object | `{}` | |
| serviceAccount.automountServiceAccountToken | bool | `false` | |
@@ -178,7 +242,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 +252,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,79 @@ 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" -}}
{{- $proto := "http" -}}
{{- if .Values.ingress.tls -}}
{{- $proto = "https" -}}
{{- end -}}
{{- printf "%s://%s" $proto $.Values.ingress.host }}
{{- 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 }}
@@ -119,6 +119,10 @@ spec:
{{- toYaml . | nindent 8 }}
{{- end }}
env:
{{- if .Values.ingress.enabled }}
- name: WEBUI_URL
value: {{ include "openweb-ui.url" . }}
{{- end }}
{{- if .Values.ollamaUrlsFromExtraEnv}}
{{- else if or .Values.ollamaUrls .Values.ollama.enabled }}
- name: "OLLAMA_BASE_URLS"
@@ -147,15 +151,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 +218,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 +234,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 +324,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 +373,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
@@ -198,6 +202,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 +222,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 +333,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 +427,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 +444,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 +464,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 +481,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 +536,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: []