Compare commits

...

68 Commits

Author SHA1 Message Date
James W.
b9686a849e Merge pull request #209 from Xeroxxx/runtimeClassName
feat: Added runtimeClassName to open-webui deployment.
2025-03-31 21:15:37 -06:00
James W.
736f71d5c0 Merge branch 'main' into runtimeClassName 2025-03-31 21:10:50 -06:00
James W.
1647c29b02 Merge pull request #208 from blib/main
Add support for SSO/OIDC
2025-03-31 21:09:20 -06:00
James W.
5969b767ab Merge pull request #212 from okamototk/ollama-1.12.0
Update ollama chart to 1.12.0(ollama 0.6.3)
2025-03-31 18:39:42 -06:00
Takashi Okamoto
83a613694b Update ollama chart to 1.12.0(ollama 0.6.3) 2025-03-30 15:27:50 +00:00
James W.
adfd8e81fd Merge pull request #211 from okamototk/ollama-0.6.2
Update ollama chart to 1.11.0(ollama 0.6.2)
2025-03-28 10:44:37 -06:00
Takashi Okamoto
8ba420dab7 Update ollama chart to 1.11.0(ollama 0.6.2) 2025-03-28 09:39:37 +00:00
173680e8e4 feat: Added runtimeClassName to open-webui deployment. 2025-03-22 16:25:21 +01:00
Boris Bliznioukov
57fd1bd513 feat: add SSO and OAuth configuration options to README and values.yaml
Signed-off-by: Boris Bliznioukov <blib@mail.com>
2025-03-20 14:41:36 +01:00
Boris Bliznioukov
8916b426ec feat: add SSO configuration options in values.yaml and workload-manager.yaml
Signed-off-by: Boris Bliznioukov <blib@mail.com>
2025-03-20 14:14:53 +01:00
James W.
da259c7471 Merge pull request #207 from vinicinbgs/main 2025-03-19 07:41:11 -06:00
Vinicius Dutra
69be5561db fix: redis pod annotation nindent 4 to 8 2025-03-19 08:31:32 -03:00
James W.
7ea5d902f8 Merge pull request #206 from yushao2/main 2025-03-18 21:29:11 -06:00
yushao2
7b349d2f08 update docs / chart 2025-03-18 23:54:58 +08:00
yushao2
c64a6d983c add ability to customize redis container security context 2025-03-18 19:06:45 +08:00
James W.
9751a36aef Merge pull request #204 from jyje/v0.5.20 2025-03-13 07:41:37 -06:00
jyje
2af1c1243a chore: Update open-webui to v0.5.20 (chart 5.24.0)
- update open-webui
    - app: from v0.5.16 to v0.5.20
    - chart: from 5.23.0 to 5.24.0
- updated subchart
    - ollama (from 1.8.0 to 1.9.0): upgrade app version from v0.5.13 to v0.6.0
2025-03-13 21:45:17 +09:00
jyje
b897d0a764 chore: Remove an unused example values 2025-03-13 21:38:36 +09:00
James W.
c42b2b658d Merge pull request #203 from open-webui/revert-milvus
Revert Milvus
2025-03-12 19:34:01 -06:00
0xThresh.eth
a36cc91584 Update dependencies 2025-03-12 19:30:05 -06:00
0xThresh.eth
3ccf0425aa Update docs 2025-03-12 19:28:18 -06:00
0xThresh.eth
9d2e8a03d2 Revert Milvus PR due to size issues 2025-03-12 19:27:45 -06:00
James W.
949e81c1ae Merge pull request #202 from open-webui/revert-196-issue-184/add-milvus
Revert "fix(ci/release): Fix helm dependency for milvus"
2025-03-12 19:07:16 -06:00
James W.
e344883342 Revert "fix(ci/release): Fix helm dependency for milvus" 2025-03-12 18:07:03 -07:00
James W.
6862dc5b2e Merge pull request #197 from saraangelmurphy/feature/add-extra-init-containers
feat: [open-webui/pipelines] add support for adding extra init containers
2025-03-11 21:20:37 -06:00
James W.
5b8410adbb Merge pull request #199 from phlmn/patch-1
docs: Fix typo in URL
2025-03-11 21:15:34 -06:00
Philipp Mandler
dbf7604c85 docs: Fix typo in URL 2025-03-11 17:04:05 +01:00
saraangelmurphy
ab693efe76 Merge branch 'main' into feature/add-extra-init-containers 2025-03-11 10:45:36 -04:00
James W.
4730e963cd Merge pull request #198 from jyje/issue-184/add-milvus 2025-03-11 08:07:05 -06:00
jyje
64a2f77a68 fix(ci/release): Update the signature of open-webui chart (to trigger release 5.21.0)
- The new signature is from open-webui image
2025-03-11 19:19:32 +09:00
Sara Angel-Murphy
df3d4a48ce feat: add support for extra init containers to pipelines chart 2025-03-10 16:22:03 -04:00
Sara Angel-Murphy
7f23390df4 fix: set description for enableOpenaiApi correctly 2025-03-10 16:18:42 -04:00
Sara Angel-Murphy
934c4ff600 feat: add support for extra init containers 2025-03-10 16:12:56 -04:00
James W.
9acc6aa73c Merge pull request #196 from jyje/issue-184/add-milvus 2025-03-10 11:08:00 -06:00
jyje
72d5981836 fix(ci/release): Fix helm dependency for milvus 2025-03-10 19:15:17 +09:00
James W.
b2d58a724e Merge pull request #190 from jyje/issue-184/add-milvus
feat(charts/open-webui): add the Milvus chart for RAG
2025-03-09 20:06:43 -06:00
James W.
4c0d7562a1 Merge pull request #187 from cnblogs-dudu/add-option-to-disable-openai-api
feat: add  option to disable openai api
2025-03-09 20:04:30 -06:00
James W.
ab46f62cf6 Merge pull request #194 from coneillpj/main
image pull secrets for websocket-redis.yml template
2025-03-09 19:55:39 -06:00
jyje
a343ea7c78 docs(charts/open-webui): refresh readme via helm-docs 2025-03-09 11:52:58 +09:00
jyje
5d8c4c0e28 feat(charts/open-webui): Fix probes 2025-03-09 11:47:28 +09:00
jyje
1eb9023699 feat(charts/open-webui): Add values-rag-milvus.yaml 2025-03-09 10:58:05 +09:00
jyje
1c7500372a refactor(charts/open-webui): Fix values format for rag and milvus 2025-03-09 10:57:24 +09:00
Chris O'Neill
26eb71d2e2 update open-webui helm chart websocket-redis.yml template - add option adding image pull secrets for redis image 2025-03-07 12:51:05 -07:00
jyje
3dc4eb8219 fix(charts/open-webui): Fix warning of the value .Value.rag.vectorDB 2025-03-06 23:03:13 +09:00
jyje
cbc2cd5172 fix(ci/open-webui): add repo of the milvus chart 2025-02-28 22:57:22 +09:00
jyje
eab043eeb1 chore: update chart lock of open-webui to 5.21.0
- no bump chart
- updated subchart
    - redis: values changed (compatible) - set `auth.usePasswordFiles=true`
2025-02-28 22:51:29 +09:00
jyje
57da11ee6d feat(charts/open-webui): add the milvus chart for RAG
- bump the version of open-webui from 5.20.0 to 5.21.0
- add the value `rag` and add its core values (vectorDB, embeddingEngine, embeddingModel)
- add milvus chart and add its core values (uri, db, token)
2025-02-28 22:15:13 +09:00
James W.
08783e7cd0 Merge pull request #188 from jyje/update-chart-lock 2025-02-25 15:48:54 -07:00
jyje
1de55f7599 docs(open-webui): refresh readme via helm-docs 2025-02-26 07:04:12 +09:00
jyje
0da3f4e930 chore: update chart lock of open-webui to 5.20.0
- bump chart from 5.19.0 to 5.20.0
- updated subcharts
    - ollama: values changed (compatible) - add `service.labels`
    - redis: values changed (compatible) - set `auth.acl.sentinel=false`
2025-02-26 06:42:48 +09:00
James W.
5ebedb44c6 Merge pull request #186 from rbnis/chore/open-webui/update-lock-file-2
feat(open-webui): Update Chart.lock and add check in pipeline
2025-02-24 19:00:32 -07:00
dudu
bc910cc2d3 feat: add option to disable openai api 2025-02-22 23:11:36 +08:00
rbnis
9312d4f79d feat(open-webui): Build helm dependencies to test if Chart.lock is in sync 2025-02-22 03:31:15 +01:00
rbnis
e011fc9fe7 chore(open-webui): Update pipelines dependency in Chart.lock to 0.4.0 2025-02-22 03:20:34 +01:00
James W.
6ba37844ec Merge pull request #185 from rbnis/chore/open-webui/update-lock-file-1
fix(open-webui): Update Chart.lock to fix failing pipeline run
2025-02-21 14:28:34 -07:00
rbnis
82d626337c fix(open-webui): Update Chart.lock to fix failing pipeline run 2025-02-21 19:42:15 +01:00
James W.
273b2b103a Merge pull request #183 from rbnis/feature/add-hostalias-support
feat: Add support for hostAliases
2025-02-21 11:20:03 -07:00
rbnis
e8dbf957b1 feat: add support for hostAliases 2025-02-21 17:58:26 +01:00
James W.
a609ae613b Merge pull request #182 from open-webui/v0.5.16
release: Update OWUI chart to v0.5.16
2025-02-21 09:53:07 -07:00
0xThresh.eth
800614e308 release: Update OWUI chart to v0.5.16 2025-02-20 19:05:44 -07:00
James W.
95040f7735 Merge pull request #180 from jyje/v0.5.15 2025-02-20 07:23:07 -07:00
James W.
a7b9fd5600 Merge pull request #181 from jyje/issue-179/pipelines-update-strategy 2025-02-20 07:22:46 -07:00
jyje
7f2b641569 feat(pipelines): add strategy for updating deployment
- bump the pipelines chart from 0.2.0 to 0.3.0
2025-02-20 22:38:57 +09:00
jyje
cbdca59247 chore: update open-webui to v0.5.15 (chart 5.17.0) 2025-02-20 21:46:58 +09:00
James W.
a368503b58 Merge pull request #178 from msabramo/patch-1 2025-02-19 10:13:06 -07:00
Marc Abramowitz
b3f84d0dbf CONTRIBUTING.md: Add link to helm-docs
Add link to helm-docs: https://github.com/norwoodj/helm-docs
2025-02-19 08:32:18 -08:00
James W.
fa81927fe2 Merge pull request #176 from mknet3/helm-add-missing-fields 2025-02-19 09:03:00 -07:00
Manuel Cañete
2a4faf6a96 feat(open-webui): enhance redis deployment with additional configurable properties 2025-02-19 16:52:34 +01:00
18 changed files with 379 additions and 36 deletions

View File

@@ -24,6 +24,16 @@ jobs:
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
- name: Build open-webui Helm dependencies
run: |
helm dependency build ./charts/open-webui
test-deploy:
name: Test Chart Deployment
runs-on: ubuntu-latest

View File

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

View File

@@ -1,15 +1,15 @@
dependencies:
- name: ollama
repository: https://otwld.github.io/ollama-helm/
version: 1.6.0
version: 1.12.0
- name: pipelines
repository: https://helm.openwebui.com
version: 0.2.0
version: 0.5.0
- name: tika
repository: https://apache.jfrog.io/artifactory/tika
version: 2.9.0
- name: redis
repository: https://charts.bitnami.com/bitnami
version: 20.7.1
digest: sha256:d897822b6463d9427f97fa81221b3bafad13ab39c205836105c3d93b9016db9f
generated: "2025-02-19T09:20:34.829162+09:00"
version: 20.11.4
digest: sha256:05f1cd5e4bfc7ca7f293e13b8ce12b7edf5ba33ba55ec151eccf86cfb30b180a
generated: "2025-03-30T15:26:22.6382Z"

View File

@@ -1,7 +1,7 @@
apiVersion: v2
name: open-webui
version: 5.16.0
appVersion: 0.5.14
version: 5.26.0
appVersion: 0.5.20
home: https://www.openwebui.com/
icon: >-
https://raw.githubusercontent.com/open-webui/open-webui/main/static/favicon.png

View File

@@ -1,6 +1,6 @@
# open-webui
![Version: 5.16.0](https://img.shields.io/badge/Version-5.16.0-informational?style=flat-square) ![AppVersion: 0.5.14](https://img.shields.io/badge/AppVersion-0.5.14-informational?style=flat-square)
![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)
Open WebUI: A User-Friendly Web Interface for Chat Interactions 👋
@@ -40,6 +40,71 @@ helm upgrade --install open-webui open-webui/open-webui
## Values
### SSO Configuration
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| sso.enableGroupManagement | bool | `false` | Enable OAuth group management through access token groups claim |
| sso.enableRoleManagement | bool | `false` | Enable OAuth role management through access token roles claim |
| sso.enableSignup | bool | `false` | Enable account creation when logging in with OAuth (distinct from regular signup) |
| sso.enabled | bool | `false` | **Enable SSO authentication globally** must enable to use SSO authentication |
| sso.groupManagement.groupsClaim | string | `"groups"` | The claim that contains the groups (can be nested, e.g., user.memberOf) |
| sso.mergeAccountsByEmail | bool | `false` | Allow logging into accounts that match email from OAuth provider (considered insecure) |
### GitHub OAuth configuration
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| sso.github.clientId | string | `""` | GitHub OAuth client ID |
| sso.github.clientSecret | string | `""` | GitHub OAuth client secret |
| sso.github.enabled | bool | `false` | Enable GitHub OAuth |
### Google OAuth configuration
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| sso.google.clientId | string | `""` | Google OAuth client ID |
| sso.google.clientSecret | string | `""` | Google OAuth client secret |
| sso.google.enabled | bool | `false` | Enable Google OAuth |
### Microsoft OAuth configuration
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| sso.microsoft.clientId | string | `""` | Microsoft OAuth client ID |
| sso.microsoft.clientSecret | string | `""` | Microsoft OAuth client secret |
| sso.microsoft.enabled | bool | `false` | Enable Microsoft OAuth |
| sso.microsoft.tenantId | string | `""` | Microsoft tenant ID - use 9188040d-6c67-4c5b-b112-36a304b66dad for personal accounts |
### OIDC configuration
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| sso.oidc.clientId | string | `""` | OIDC client ID |
| sso.oidc.clientSecret | string | `""` | OIDC client secret |
| 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 |
| sso.oidc.scopes | string | `"openid email profile"` | Scopes to request (space-separated). |
### Role management configuration
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| sso.roleManagement.adminRoles | string | `""` | Comma-separated list of roles allowed to log in as admin (receive open webui role admin) |
| sso.roleManagement.allowedRoles | string | `""` | Comma-separated list of roles allowed to log in (receive open webui role user) |
| sso.roleManagement.rolesClaim | string | `"roles"` | The claim that contains the roles (can be nested, e.g., user.roles) |
### SSO trusted header authentication
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| sso.trustedHeader.emailHeader | string | `""` | Header containing the user's email address |
| sso.trustedHeader.enabled | bool | `false` | Enable trusted header authentication |
| sso.trustedHeader.nameHeader | string | `""` | Header containing the user's name (optional, used for new user creation) |
### Other Values
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| affinity | object | `{}` | Affinity for pod assignment |
@@ -47,13 +112,16 @@ helm upgrade --install open-webui open-webui/open-webui
| clusterDomain | string | `"cluster.local"` | Value of cluster domain |
| 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 | `{}` | |
| enableOpenaiApi | bool | `true` | Enables the use of OpenAI APIs |
| 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/> |
| extraResources | list | `[]` | Extra resources to deploy with Open WebUI |
| hostAliases | list | `[]` | HostAliases to be added to hosts-file of each container |
| image | object | `{"pullPolicy":"IfNotPresent","repository":"ghcr.io/open-webui/open-webui","tag":""}` | Open WebUI image tags can be found here: https://github.com/open-webui/open-webui |
| imagePullSecrets | list | `[]` | Configure imagePullSecrets to use private registry ref: <https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry> |
| ingress.additionalHosts | list | `[]` | |
| ingress.annotations | object | `{}` | Use appropriate annotations for your Ingress controller, e.g., for NGINX: |
| ingress.annotations | object | `{}` | Use appropriate annotations for your Ingress controller, e.g., for NGINX: |
| ingress.class | string | `""` | |
| ingress.enabled | bool | `false` | |
| ingress.existingSecret | string | `""` | |
@@ -84,7 +152,7 @@ helm upgrade --install open-webui open-webui/open-webui
| pipelines.extraEnvVars | list | `[]` | This section can be used to pass required environment variables to your pipelines (e.g. Langfuse hostname) |
| 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-containe> |
| podSecurityContext | object | `{}` | Configure pod security context ref: <https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container> |
| 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 |
@@ -95,6 +163,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. |
| 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` | |
@@ -109,7 +178,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 | `{"annotations":{},"args":[],"command":[],"enabled":true,"image":{"pullPolicy":"IfNotPresent","repository":"redis","tag":"7.4.2-alpine3.21"},"labels":{},"name":"open-webui-redis","pods":{"annotations":{}},"resources":{},"service":{"annotations":{},"containerPort":6379,"labels":{},"nodePort":"","port":6379,"type":"ClusterIP"}}` | Deploys a redis |
| 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.redis.affinity | object | `{}` | Redis affinity for pod assignment |
| websocket.redis.annotations | object | `{}` | Redis annotations |
| websocket.redis.args | list | `[]` | Redis arguments (overrides default) |
| websocket.redis.command | list | `[]` | Redis command (overrides default) |
@@ -120,6 +190,7 @@ helm upgrade --install open-webui open-webui/open-webui
| websocket.redis.pods | object | `{"annotations":{}}` | Redis pod |
| websocket.redis.pods.annotations | object | `{}` | Redis pod annotations |
| 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 |
| websocket.redis.service.annotations | object | `{}` | Redis service annotations |
| websocket.redis.service.containerPort | int | `6379` | Redis container/target port |
@@ -127,6 +198,7 @@ helm upgrade --install open-webui open-webui/open-webui
| websocket.redis.service.nodePort | string | `""` | Redis service node port. Valid only when type is `NodePort` |
| websocket.redis.service.port | int | `6379` | Redis service port |
| websocket.redis.service.type | string | `"ClusterIP"` | Redis service type |
| websocket.redis.tolerations | list | `[]` | Redis tolerations for pod assignment |
| websocket.url | string | `"redis://open-webui-redis:6379/0"` | Specifies the URL of the Redis instance for websocket communication. Template with `redis://[:<password>@]<hostname>:<port>/<db>` |
----------------------------------------------

Binary file not shown.

Binary file not shown.

View File

@@ -1,11 +1,11 @@
{{- `
🎉 Welcome to Open WebUI!!
___ __ __ _ _ _ ___
/ _ \ _ __ ___ _ __ \ \ / /__| |__ | | | |_ _|
| | | | '_ \ / _ \ '_ \ \ \ /\ / / _ \ '_ \| | | || |
| |_| | |_) | __/ | | | \ V V / __/ |_) | |_| || |
\___/| .__/ \___|_| |_| \_/\_/ \___|_.__/ \___/|___|
|_|
██████╗ ██████╗ ███████╗███╗ ██╗ ██╗ ██╗███████╗██████╗ ██╗ ██╗██╗
██╔═══██╗██╔══██╗██╔════╝████╗ ██║ ██║ ██║██╔════╝██╔══██╗██║ ██║██║
██║ ██║██████╔╝█████╗ ██╔██╗ ██║ ██║ █╗ ██║█████╗ ██████╔╝██║ ██║██║
██║ ██║██╔═══╝ ██╔══╝ ██║╚██╗██║ ██║███╗██║██╔══╝ ██╔══██╗██║ ██║██║
╚██████╔╝██║ ███████╗██║ ╚████║ ╚███╔███╔╝███████╗██████╔╝╚██████╔╝██║
╚═════╝ ╚═╝ ╚══════╝╚═╝ ╚═══╝ ╚══╝╚══╝ ╚══════╝╚═════╝ ╚═════╝ ╚═╝
` }}
v{{ .Chart.AppVersion }} - building the best open-source AI user interface.
- Chart Version: v{{ .Chart.Version }}
@@ -61,7 +61,7 @@ This interface allows you to easily interact with local AI models.
3. Useful Commands:
- Check deployment status:
helm status {{ .Release.Name }} -n {{ .Release.Namespace }}
- Get detailed information:
helm get all {{ .Release.Name }} -n {{ .Release.Namespace }}

View File

@@ -23,9 +23,13 @@ spec:
{{- include "websocket.redis.labels" . | nindent 8 }}
annotations:
{{- with .Values.websocket.redis.pods.annotations }}
{{- toYaml . | nindent 4 }}
{{- toYaml . | nindent 8 }}
{{- end }}
spec:
{{- if .Values.websocket.redis.image.pullSecretName }}
imagePullSecrets:
- name: {{ .Values.websocket.redis.image.pullSecretName }}
{{- end }}
containers:
- name: {{ .Values.websocket.redis.name }}
image: "{{ .Values.websocket.redis.image.repository }}:{{ .Values.websocket.redis.image.tag }}"
@@ -45,6 +49,18 @@ spec:
resources:
{{- toYaml . | nindent 10 }}
{{- end }}
{{- with .Values.websocket.redis.tolerations }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.websocket.redis.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.websocket.redis.securityContext }}
securityContext:
{{- toYaml . | nindent 8 }}
{{- end }}
---
apiVersion: v1
kind: Service

View File

@@ -69,8 +69,14 @@ spec:
{{- with .Values.volumeMounts.initContainer }}
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.extraInitContainers }}
{{- toYaml . | nindent 6 }}
{{- end }}
enableServiceLinks: false
automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }}
{{- if .Values.runtimeClassName }}
runtimeClassName: {{ .Values.runtimeClassName | quote }}
{{- end }}
{{- if .Values.serviceAccount.enable }}
serviceAccountName: {{ .Values.serviceAccount.name | default (include "open-webui.name" .) }}
{{- end }}
@@ -121,22 +127,25 @@ spec:
- name: "ENABLE_OLLAMA_API"
value: "False"
{{- end }}
{{- if and .Values.openaiBaseApiUrl (not .Values.openaiBaseApiUrls) (not .Values.pipelines.enabled) }}
{{- if and .Values.enableOpenaiApi .Values.openaiBaseApiUrl (not .Values.openaiBaseApiUrls) (not .Values.pipelines.enabled) }}
# If only an OpenAI API value is set, set it to OPENAI_API_BASE_URL
- name: "OPENAI_API_BASE_URL"
value: {{ .Values.openaiBaseApiUrl | quote }}
{{- else if and .Values.openaiBaseApiUrl .Values.pipelines.enabled (not .Values.openaiBaseApiUrls) }}
{{- else if and .Values.enableOpenaiApi .Values.openaiBaseApiUrl .Values.pipelines.enabled (not .Values.openaiBaseApiUrls) }}
# If Pipelines is enabled and OpenAI API value is set, use OPENAI_API_BASE_URLS with combined values
- name: "OPENAI_API_BASE_URLS"
value: "{{ include "pipelines.serviceEndpoint" . }};{{ .Values.openaiBaseApiUrl }}"
{{- else if and .Values.pipelines.enabled (not .Values.openaiBaseApiUrl) (not .Values.openaiBaseApiUrls) }}
{{- else if and .Values.enableOpenaiApi .Values.pipelines.enabled (not .Values.openaiBaseApiUrl) (not .Values.openaiBaseApiUrls) }}
# If Pipelines is enabled and no OpenAI API values are set, set OPENAI_API_BASE_URL to the Pipelines server endpoint
- name: "OPENAI_API_BASE_URL"
value: {{ include "pipelines.serviceEndpoint" . | quote }}
{{- else if and .Values.openaiBaseApiUrls .Values.pipelines.enabled }}
{{- else if and .Values.enableOpenaiApi .Values.openaiBaseApiUrls .Values.pipelines.enabled }}
# If OpenAI API value(s) set and Pipelines is enabled, use OPENAI_API_BASE_URLS to support all the endpoints in the chart
- name: "OPENAI_API_BASE_URLS"
value: "{{ include "pipelines.serviceEndpoint" . }};{{ join ";" .Values.openaiBaseApiUrls }}"
{{- else if not .Values.enableOpenaiApi }}
- name: "ENABLE_OPENAI_API"
value: "False"
{{- end }}
{{- if .Values.extraEnvVars }}
{{- toYaml .Values.extraEnvVars | nindent 8 }}
@@ -155,6 +164,76 @@ spec:
- name: "WEBSOCKET_REDIS_URL"
value: {{ .Values.websocket.url | quote }}
{{- end }}
{{- if .Values.sso.enabled }}
{{- if .Values.sso.enableSignup }}
- name: "ENABLE_OAUTH_SIGNUP"
value: "True"
{{- end }}
{{- if .Values.sso.mergeAccountsByEmail }}
- name: "OAUTH_MERGE_ACCOUNTS_BY_EMAIL"
value: "True"
{{- end }}
{{- if .Values.sso.google.enabled }}
- name: "GOOGLE_CLIENT_ID"
value: {{ .Values.sso.google.clientId | quote }}
- name: "GOOGLE_CLIENT_SECRET"
value: {{ .Values.sso.google.clientSecret | quote }}
{{- end }}
{{- if .Values.sso.microsoft.enabled }}
- name: "MICROSOFT_CLIENT_ID"
value: {{ .Values.sso.microsoft.clientId | quote }}
- name: "MICROSOFT_CLIENT_SECRET"
value: {{ .Values.sso.microsoft.clientSecret | quote }}
- 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 }}
- name: "GITHUB_CLIENT_SECRET"
value: {{ .Values.sso.github.clientSecret | quote }}
{{- end }}
{{- if .Values.sso.oidc.enabled }}
- name: "OAUTH_CLIENT_ID"
value: {{ .Values.sso.oidc.clientId | quote }}
- name: "OAUTH_CLIENT_SECRET"
value: {{ .Values.sso.oidc.clientSecret | quote }}
- name: "OPENID_PROVIDER_URL"
value: {{ .Values.sso.oidc.providerUrl | quote }}
- name: "OAUTH_PROVIDER_NAME"
value: {{ .Values.sso.oidc.providerName | quote }}
- name: "OAUTH_SCOPES"
value: {{ .Values.sso.oidc.scopes | quote }}
{{- end }}
{{- if .Values.sso.enableRoleManagement }}
- name: "ENABLE_OAUTH_ROLE_MANAGEMENT"
value: "True"
- name: "OAUTH_ROLES_CLAIM"
value: {{ .Values.sso.roleManagement.rolesClaim | quote }}
{{- if .Values.sso.roleManagement.allowedRoles }}
- name: "OAUTH_ALLOWED_ROLES"
value: {{ .Values.sso.roleManagement.allowedRoles | quote }}
{{- end }}
{{- if .Values.sso.roleManagement.adminRoles }}
- name: "OAUTH_ADMIN_ROLES"
value: {{ .Values.sso.roleManagement.adminRoles | quote }}
{{- end }}
{{- end }}
{{- if .Values.sso.enableGroupManagement }}
- name: "ENABLE_OAUTH_GROUP_MANAGEMENT"
value: "True"
- name: "OAUTH_GROUP_CLAIM"
value: {{ .Values.sso.groupManagement.groupsClaim | quote }}
{{- end }}
{{- if .Values.sso.trustedHeader.enabled }}
- name: "WEBUI_AUTH_TRUSTED_EMAIL_HEADER"
value: {{ .Values.sso.trustedHeader.emailHeader | quote }}
{{- if .Values.sso.trustedHeader.nameHeader }}
- name: "WEBUI_AUTH_TRUSTED_NAME_HEADER"
value: {{ .Values.sso.trustedHeader.nameHeader | quote }}
{{- end }}
{{- end }}
{{- end }}
tty: true
{{- with .Values.nodeSelector }}
nodeSelector:
@@ -172,6 +251,10 @@ spec:
topologySpreadConstraints:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.hostAliases }}
hostAliases:
{{- toYaml . | nindent 8 }}
{{- end }}
volumes:
{{- if and .Values.persistence.enabled .Values.persistence.existingClaim }}
- name: data

View File

@@ -1,6 +1,5 @@
nameOverride: ""
namespaceOverride: ""
ollama:
# -- Automatically install Ollama Helm chart from https://otwld.github.io/ollama-helm/. Use [Helm Values](https://github.com/otwld/ollama-helm/#helm-values) to configure
enabled: true
@@ -84,6 +83,17 @@ websocket:
port: 6379
# -- Redis service node port. Valid only when type is `NodePort`
nodePort: ""
# -- Redis tolerations for pod assignment
tolerations: []
# -- Redis affinity for pod assignment
affinity: {}
# -- Redis security context
securityContext:
{}
# runAsUser: 999
# runAsGroup: 1000
# -- Deploys a Redis cluster with subchart 'redis' from bitnami
redis-cluster:
@@ -166,14 +176,14 @@ copyAppData:
managedCertificate:
enabled: false
name: "mydomain-chat-cert" # You can override this name if needed
name: "mydomain-chat-cert" # You can override this name if needed
domains:
- chat.example.com # update to your real domain
ingress:
enabled: false
class: ""
# -- Use appropriate annotations for your Ingress controller, e.g., for NGINX:
# -- Use appropriate annotations for your Ingress controller, e.g., for NGINX:
annotations: {}
# # Example for GKE Ingress
# kubernetes.io/ingress.class: "gce"
@@ -183,8 +193,8 @@ ingress:
# nginx.ingress.kubernetes.io/ssl-redirect: "true"
# nginx.ingress.kubernetes.io/permanent-redirect: "https://chat.example.com"
# networking.gke.io/managed-certificates: "mydomain-chat-cert"
# # nginx.ingress.kubernetes.io/rewrite-target: /
host: "chat.example.com" # update to your real domain
# # nginx.ingress.kubernetes.io/rewrite-target: /
host: "chat.example.com" # update to your real domain
additionalHosts: []
tls: false
existingSecret: ""
@@ -214,6 +224,9 @@ affinity: {}
# -- Topology Spread Constraints for pod assignment
topologySpreadConstraints: []
# -- HostAliases to be added to hosts-file of each container
hostAliases: []
# -- Service values to expose Open WebUI pods to cluster
service:
type: ClusterIP
@@ -224,11 +237,15 @@ service:
labels: {}
loadBalancerClass: ""
# -- Enables the use of OpenAI APIs
enableOpenaiApi: true
# -- OpenAI base API URL to use. Defaults to the Pipelines service endpoint when Pipelines are enabled, and "https://api.openai.com/v1" if Pipelines are not enabled and this value is blank
openaiBaseApiUrl: "https://api.openai.com/v1"
# -- OpenAI base API URLs to use. Overwrites the value in openaiBaseApiUrl if set
openaiBaseApiUrls: []
openaiBaseApiUrls:
[]
# - "https://api.openai.com/v1"
# - "https://api.company.openai.com/v1"
@@ -249,6 +266,10 @@ extraEnvVars:
# - name: OLLAMA_DEBUG
# value: "1"
# -- Configure runtime class
# ref: <https://kubernetes.io/docs/concepts/containers/runtime-class/>
runtimeClassName: ""
# -- Configure container volume mounts
# ref: <https://kubernetes.io/docs/tasks/configure-pod-container/configure-volume-storage/>
volumeMounts:
@@ -259,6 +280,16 @@ volumeMounts:
# - name: ""
# mountPath: ""
# -- Additional init containers to add to the deployment/statefulset
# ref: <https://kubernetes.io/docs/concepts/workloads/pods/init-containers/>
extraInitContainers: []
# - name: custom-init
# image: busybox:latest
# command: ['sh', '-c', 'echo "Custom init container running"']
# volumeMounts:
# - name: data
# mountPath: /data
# -- Configure pod volumes
# ref: <https://kubernetes.io/docs/tasks/configure-pod-container/configure-volume-storage/>
volumes: []
@@ -269,7 +300,7 @@ volumes: []
# emptyDir: {}
# -- Configure pod security context
# ref: <https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-containe>
# ref: <https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container>
podSecurityContext:
{}
# fsGroupChangePolicy: Always
@@ -277,7 +308,6 @@ podSecurityContext:
# 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:
@@ -294,6 +324,106 @@ containerSecurityContext:
# seccompProfile:
# type: "RuntimeDefault"
sso:
# -- **Enable SSO authentication globally** must enable to use SSO authentication
# @section -- SSO Configuration
enabled: false
# -- Enable account creation when logging in with OAuth (distinct from regular signup)
# @section -- SSO Configuration
enableSignup: false
# -- Allow logging into accounts that match email from OAuth provider (considered insecure)
# @section -- SSO Configuration
mergeAccountsByEmail: false
# -- Enable OAuth role management through access token roles claim
# @section -- SSO Configuration
enableRoleManagement: false
# -- Enable OAuth group management through access token groups claim
# @section -- SSO Configuration
enableGroupManagement: false
google:
# -- Enable Google OAuth
# @section -- Google OAuth configuration
enabled: false
# -- Google OAuth client ID
# @section -- Google OAuth configuration
clientId: ""
# -- Google OAuth client secret
# @section -- Google OAuth configuration
clientSecret: ""
microsoft:
# -- Enable Microsoft OAuth
# @section -- Microsoft OAuth configuration
enabled: false
# -- Microsoft OAuth client ID
# @section -- Microsoft OAuth configuration
clientId: ""
# -- Microsoft OAuth client secret
# @section -- Microsoft OAuth configuration
clientSecret: ""
# -- Microsoft tenant ID - use 9188040d-6c67-4c5b-b112-36a304b66dad for personal accounts
# @section -- Microsoft OAuth configuration
tenantId: ""
github:
# -- Enable GitHub OAuth
# @section -- GitHub OAuth configuration
enabled: false
# -- GitHub OAuth client ID
# @section -- GitHub OAuth configuration
clientId: ""
# -- GitHub OAuth client secret
# @section -- GitHub OAuth configuration
clientSecret: ""
oidc:
# -- Enable OIDC authentication
# @section -- OIDC configuration
enabled: false
# -- OIDC client ID
# @section -- OIDC configuration
clientId: ""
# -- OIDC client secret
# @section -- OIDC configuration
clientSecret: ""
# -- OIDC provider well known URL
# @section -- OIDC configuration
providerUrl: ""
# -- Name of the provider to show on the UI
# @section -- OIDC configuration
providerName: "SSO"
# -- Scopes to request (space-separated).
# @section -- OIDC configuration
scopes: "openid email profile"
roleManagement:
# -- The claim that contains the roles (can be nested, e.g., user.roles)
# @section -- Role management configuration
rolesClaim: "roles"
# -- Comma-separated list of roles allowed to log in (receive open webui role user)
# @section -- Role management configuration
allowedRoles: ""
# -- Comma-separated list of roles allowed to log in as admin (receive open webui role admin)
# @section -- Role management configuration
adminRoles: ""
groupManagement:
# -- The claim that contains the groups (can be nested, e.g., user.memberOf)
# @section -- SSO Configuration
groupsClaim: "groups"
trustedHeader:
# -- Enable trusted header authentication
# @section -- SSO trusted header authentication
enabled: false
# -- Header containing the user's email address
# @section -- SSO trusted header authentication
emailHeader: ""
# -- Header containing the user's name (optional, used for new user creation)
# @section -- SSO trusted header authentication
nameHeader: ""
# -- Extra resources to deploy with Open WebUI
extraResources:
[]

View File

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

View File

@@ -1,6 +1,6 @@
# pipelines
![Version: 0.2.0](https://img.shields.io/badge/Version-0.2.0-informational?style=flat-square) ![AppVersion: alpha](https://img.shields.io/badge/AppVersion-alpha-informational?style=flat-square)
![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)
Pipelines: UI-Agnostic OpenAI API Plugin Framework
@@ -35,7 +35,9 @@ helm upgrade --install open-webui open-webui/pipelines
| clusterDomain | string | `"cluster.local"` | Value of cluster domain |
| 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/> |
| extraResources | list | `[]` | Extra resources to deploy with Open WebUI Pipelines |
| hostAliases | list | `[]` | HostAliases to be added to hosts-file of each container |
| image.pullPolicy | string | `"Always"` | |
| image.repository | string | `"ghcr.io/open-webui/pipelines"` | |
| image.tag | string | `"main"` | |
@@ -69,9 +71,10 @@ helm upgrade --install open-webui open-webui/pipelines
| service.type | string | `"ClusterIP"` | |
| serviceAccount.automountServiceAccountToken | bool | `false` | |
| serviceAccount.enable | bool | `true` | |
| strategy | object | `{}` | Strategy for updating the deployment |
| tolerations | list | `[]` | Tolerations for pod assignment |
| volumeMounts | list | `[]` | Configure container volume mounts |
| volumes | list | `[]` | Configure pod volumes |
| volumeMounts | list | `[]` | Configure container volume mounts ref: <https://kubernetes.io/docs/tasks/configure-pod-container/configure-volume-storage/> |
| volumes | list | `[]` | Configure pod volumes ref: <https://kubernetes.io/docs/tasks/configure-pod-container/configure-volume-storage/> |
----------------------------------------------

View File

@@ -14,6 +14,10 @@ spec:
selector:
matchLabels:
{{- include "pipelines.selectorLabels" . | nindent 6 }}
{{- with .Values.strategy }}
strategy:
{{- toYaml . | nindent 4 }}
{{- end }}
template:
metadata:
labels:
@@ -30,6 +34,10 @@ spec:
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.extraInitContainers }}
initContainers:
{{- toYaml . | nindent 8 }}
{{- end }}
enableServiceLinks: false
automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken | default false }}
{{- if .Values.serviceAccount.enable }}
@@ -70,6 +78,10 @@ spec:
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.hostAliases }}
hostAliases:
{{- toYaml . | nindent 8 }}
{{- end }}
volumes:
{{- if and .Values.persistence.enabled .Values.persistence.existingClaim }}
- name: data

View File

@@ -8,6 +8,8 @@ annotations: {}
podAnnotations: {}
podLabels: {}
replicaCount: 1
# -- Strategy for updating the deployment
strategy: {}
image:
repository: ghcr.io/open-webui/pipelines
tag: main
@@ -53,6 +55,9 @@ tolerations: []
# -- Affinity for pod assignment
affinity: {}
# -- HostAliases to be added to hosts-file of each container
hostAliases: []
service:
type: ClusterIP
annotations: {}
@@ -94,6 +99,16 @@ volumeMounts: []
# - name: ""
# mountPath: ""
# -- Additional init containers to add to the deployment
# ref: <https://kubernetes.io/docs/concepts/workloads/pods/init-containers/>
extraInitContainers: []
# - name: custom-init
# image: busybox:latest
# command: ['sh', '-c', 'echo "Custom init container running"']
# volumeMounts:
# - name: data
# mountPath: /data
# -- Configure pod volumes
# ref: <https://kubernetes.io/docs/tasks/configure-pod-container/configure-volume-storage/>
volumes: []