Compare commits

...

103 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
James W.
6829878574 Merge pull request #175 from jyje/update-chart-lock
Update chart lock of open-webui
2025-02-18 18:13:31 -07:00
jyje
ef8d0a19be chore: update chart lock of open-webui to 5.16.0
- bump chart from 5.15.0 to 5.16.0
- updated subcharts
    - ollama: no values changed - bump `appVersion`
    - pipelines: values changed (compatible) - see https://github.com/open-webui/helm-charts/compare/pipelines-0.0.6...pipelines-0.2.0
    - redis: no values changed - minor update for `renderSecurityContext`
2025-02-19 09:42:42 +09:00
James W.
f7642b5df4 Merge pull request #172 from jyje/issue-150/pipelines-extra-volumes
feat: [pipelines] add volumeMounts and volumes
2025-02-18 14:03:23 -07:00
James W.
77a502a9f7 Merge pull request #174 from jyje/v0.5.14 2025-02-18 10:47:53 -07:00
jyje
2dd1e147c3 chore: update open-webui to v0.5.14 (chart 5.15.0) 2025-02-19 02:39:01 +09:00
jyje
2a015f01e1 chore(pipelines): bump chart version from 0.1.0 to 0.2.0 2025-02-19 01:47:43 +09:00
jyje
6d1192b320 Merge remote-tracking branch 'upstream/main' into issue-150/pipelines-extra-volumes 2025-02-19 01:44:00 +09:00
James W.
e8838eaec8 Merge pull request #171 from jyje/v0.5.13 2025-02-18 06:15:13 -07:00
jyje
3e16c22e08 feat(pipelines): add volumeMounts and volumes
- need to bump chart version
2025-02-18 16:28:58 +09:00
jyje
22a20ddd45 chore: update open-webui to v0.5.13 (chart 5.14.0)
- update open-webui
    - app: from v0.5.12 to v0.5.13
    - chart: from 5.13.0 to 5.14.0
- no dependency update (pipelines need to be update)
2025-02-18 15:28:27 +09:00
James W.
d08df9c494 Merge pull request #170 from open-webui/release-pipelines-v0.1.0
chore: Update docs and try to re-trigger v0.1.0 release
2025-02-14 12:09:23 -07:00
0xThresh.eth
aa4995bc86 chore: Update docs and try to re-trigger v0.1.0 release 2025-02-14 12:07:19 -07:00
James W.
2043936012 chore: update Helm Release action to latest version
https://github.com/marketplace/actions/helm-chart-releaser is now on 1.7.0, which resolved an issue with releasing multiple charts from the same repo in a single action run.
2025-02-14 11:05:34 -08:00
James W.
f2e5e4226c Merge pull request #146 from zadjadr/main
Allow to set OPENAI_API_BASE_URL manually
2025-02-14 11:47:21 -07:00
0xThresh.eth
c6d111535c Support single OpenAI API endpoint, multiple endpoints, with or without Pipelines 2025-02-14 11:43:06 -07:00
0xThresh.eth
0e28ac5b4e merge main 2025-02-14 11:07:02 -07:00
James W.
b2a5b3a331 Merge pull request #168 from jyje/0.5.12
Update open-webui to v0.5.12
2025-02-14 10:47:06 -07:00
jyje
51c2bb5937 chore: update open-webui to v0.5.12
- update open-webui
    - app: from v0.5.11 to v0.5.12
    - chart: from 5.11.0 to 5.12.0
- dependency update
    - ollama chart: from 1.4.1 to 1.5.0
2025-02-14 19:11:19 +09:00
James W.
771687760a Merge pull request #165 from jyje/0.5.11 2025-02-13 06:37:05 -07:00
jyje
be4ab2c29d chore: update open-webui to v0.5.11
- update open-webui
    - app: from v0.5.10 to v0.5.11
    - chart: from 5.10.0 to 5.11.0
- no dependency update
2025-02-13 22:17:56 +09:00
James W.
4ada4ac05a Merge pull request #162 from vinicinbgs/main 2025-02-12 17:13:39 -07:00
Vinicius Dutra
1e87660292 feat: enable annotations in redis pods 2025-02-10 17:59:20 -03:00
James W.
6ee6c9dc44 Merge pull request #160 from jyje/issue-158/update-ollama-chart
Fix example values for Ollama pull and run
2025-02-10 08:07:44 -07:00
jyje
021e958b5d chore(subchart/ollama): fix example values for pull and run 2025-02-10 20:43:40 +09:00
James W.
97d4e16f51 Merge pull request #157 from ido777/add_certificate
Add managed certificate support and update ingress configuration for GKE
2025-02-09 13:36:40 -07:00
Ido777
d23608a778 Clear ingress annotations in values.yaml for open-webui chart 2025-02-09 22:29:53 +02:00
Ido777
9c5db2ccd2 disabled managed certificate setting in values.yaml 2025-02-09 17:26:38 +02:00
Ido777
3d8db7dc34 Disable ingress in values.yaml for open-webui chart to minimize changes 2025-02-09 17:18:46 +02:00
Ido777
0e865418e8 Add managed certificate support and update ingress configuration for Open WebUI 2025-02-09 17:08:31 +02:00
0xThresh.eth
52f97fcb02 Update chart version, update documentation 2025-02-07 11:57:11 -07:00
0xThresh.eth
aced37379a Merge branch 'main' into zadjadr/main 2025-02-07 11:56:28 -07:00
Zadjad Rezai
7cc125f8cf Allow multiple configurations for OPENAI_API_BASE_URLS 2025-02-07 11:57:29 +00:00
James W.
8acfa719fe Merge pull request #155 from tuxtof/main 2025-02-06 09:32:29 -07:00
Christophe Jauffret
59048fd177 update open-webui to 0.5.10 2025-02-06 16:42:53 +01:00
Zadjad Rezai
eb466a6236 Allow to set OPENAI_API_BASE_URL manually 2025-01-20 09:53:55 +00:00
21 changed files with 758 additions and 35 deletions

View File

@@ -67,7 +67,7 @@ jobs:
helm repo add redis https://charts.bitnami.com/bitnami
- name: Run chart-releaser
uses: helm/chart-releaser-action@v1.6.0
uses: helm/chart-releaser-action@v1.7.0
with:
skip_existing: false
packages_with_index: true

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.3.0
version: 1.12.0
- name: pipelines
repository: https://helm.openwebui.com
version: 0.0.6
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.6.3
digest: sha256:b0e3a4613e4f5b9ad2766cafb111b2c03dff1ba1774217ed21fb9fd5556729f4
generated: "2025-01-16T14:22:56.662663-07: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.4.0
appVersion: 0.5.4
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.4.0](https://img.shields.io/badge/Version-5.4.0-informational?style=flat-square) ![AppVersion: 0.5.4](https://img.shields.io/badge/AppVersion-0.5.4-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 👋
@@ -12,6 +12,7 @@ Open WebUI: A User-Friendly Web Interface for Chat Interactions 👋
* <https://github.com/open-webui/open-webui/pkgs/container/open-webui>
* <https://github.com/otwld/ollama-helm/>
* <https://hub.docker.com/r/ollama/ollama>
* <https://charts.bitnami.com/bitnami>
## Installing
@@ -39,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 |
@@ -46,26 +112,34 @@ 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: nginx.ingress.kubernetes.io/rewrite-target: / |
| ingress.annotations | object | `{}` | Use appropriate annotations for your Ingress controller, e.g., for NGINX: |
| ingress.class | string | `""` | |
| ingress.enabled | bool | `false` | |
| ingress.existingSecret | string | `""` | |
| ingress.host | string | `""` | |
| 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> |
| managedCertificate.domains[0] | string | `"chat.example.com"` | |
| managedCertificate.enabled | bool | `false` | |
| managedCertificate.name | string | `"mydomain-chat-cert"` | |
| nameOverride | string | `""` | |
| namespaceOverride | string | `""` | |
| nodeSelector | object | `{}` | Node labels for pod assignment. |
| ollama.enabled | bool | `true` | Automatically install Ollama Helm chart from https://otwld.github.io/ollama-helm/. Use [Helm Values](https://github.com/otwld/ollama-helm/#helm-values) to configure |
| ollama.fullnameOverride | string | `"open-webui-ollama"` | If enabling embedded Ollama, update fullnameOverride to your desired Ollama name value, or else it will use the default ollama.name value from the Ollama chart |
| ollamaUrls | list | `[]` | A list of Ollama API endpoints. These can be added in lieu of automatically installing the Ollama Helm chart, or in addition to it. |
| openaiBaseApiUrl | string | `""` | 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 |
| ollamaUrlsFromExtraEnv | bool | `false` | Disables taking Ollama Urls from `ollamaUrls` list |
| openaiBaseApiUrl | string | `"https://api.openai.com/v1"` | 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 |
| openaiBaseApiUrls | list | `[]` | OpenAI base API URLs to use. Overwrites the value in openaiBaseApiUrl if set |
| persistence.accessModes | list | `["ReadWriteOnce"]` | If using multiple replicas, you must update accessModes to ReadWriteMany |
| persistence.annotations | object | `{}` | |
| persistence.enabled | bool | `true` | |
@@ -78,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 |
@@ -89,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` | |
@@ -103,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","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) |
@@ -111,7 +187,10 @@ 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.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 |
@@ -119,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

@@ -0,0 +1,11 @@
{{- if .Values.managedCertificate.enabled }}
apiVersion: networking.gke.io/v1
kind: ManagedCertificate
metadata:
name: {{ .Values.managedCertificate.name | default "mydomain-cert" }}
spec:
domains:
{{- range .Values.managedCertificate.domains }}
- {{ . | quote }}
{{- end }}
{{- end }}

View File

@@ -21,7 +21,15 @@ spec:
metadata:
labels:
{{- include "websocket.redis.labels" . | nindent 8 }}
annotations:
{{- with .Values.websocket.redis.pods.annotations }}
{{- 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 }}"
@@ -41,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 }}
@@ -113,18 +119,33 @@ spec:
{{- toYaml . | nindent 8 }}
{{- end }}
env:
{{- if or .Values.ollamaUrls .Values.ollama.enabled }}
{{- if .Values.ollamaUrlsFromExtraEnv}}
{{- else if or .Values.ollamaUrls .Values.ollama.enabled }}
- name: "OLLAMA_BASE_URLS"
value: {{ include "ollamaBaseUrls" . | quote }}
{{- else }}
- name: "ENABLE_OLLAMA_API"
value: "False"
{{- end }}
{{- 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"
{{- if .Values.pipelines.enabled }}
value: {{ include "pipelines.serviceEndpoint" . }}
{{- else if .Values.openaiBaseApiUrl }}
value: {{ .Values.openaiBaseApiUrl | quote }}
{{- 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.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.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 }}
@@ -143,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:
@@ -160,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

@@ -0,0 +1,290 @@
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: false
# -- If enabling embedded Ollama, update fullnameOverride to your desired Ollama name value, or else it will use the default ollama.name value from the Ollama chart
fullnameOverride: "open-webui-ollama"
# -- Example Ollama configuration with nvidia GPU enabled, automatically downloading a model, and deploying a PVC for model persistence
# ollama:
# gpu:
# enabled: true
# type: 'nvidia'
# number: 1
# models:
# - llama3
# runtimeClassName: nvidia
# persistentVolume:
# enabled: true
# volumeName: "example-pre-existing-pv-created-by-smb-csi"
pipelines:
# -- Automatically install Pipelines chart to extend Open WebUI functionality using Pipelines: https://github.com/open-webui/pipelines
enabled: false
# -- This section can be used to pass required environment variables to your pipelines (e.g. Langfuse hostname)
extraEnvVars: []
tika:
# -- Automatically install Apache Tika to extend Open WebUI
enabled: false
# -- A list of Ollama API endpoints. These can be added in lieu of automatically installing the Ollama Helm chart, or in addition to it.
ollamaUrls: []
websocket:
# -- Enables websocket support in Open WebUI with env `ENABLE_WEBSOCKET_SUPPORT`
enabled: false
# -- Specifies the websocket manager to use with env `WEBSOCKET_MANAGER`: redis (default)
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
# -- Deploys a redis
redis:
# -- Enable redis installation
enabled: true
# -- Redis name
name: open-webui-redis
# -- Redis labels
labels: {}
# -- Redis annotations
annotations: {}
# -- Redis image
image:
repository: redis
tag: 7.4.2-alpine3.21
pullPolicy: IfNotPresent
# -- Redis command (overrides default)
command: []
# -- Redis arguments (overrides default)
args: []
# -- Redis resources
resources: {}
# -- Redis service
service:
# -- Redis container/target port
containerPort: 6379
# -- Redis service type
type: ClusterIP
# -- Redis service labels
labels: {}
# -- Redis service annotations
annotations: {}
# -- Redis service port
port: 6379
# -- Redis service node port. Valid only when type is `NodePort`
nodePort: ""
# -- Deploys a Redis cluster with subchart 'redis' from bitnami
redis-cluster:
# -- Enable Redis installation
enabled: false
# -- Redis cluster name (recommended to be 'open-webui-redis')
# - In this case, redis url will be 'redis://open-webui-redis-master:6379/0' or 'redis://[:<password>@]open-webui-redis-master:6379/0'
fullnameOverride: open-webui-redis
# -- Redis Authentication
auth:
# -- Enable Redis authentication (disabled by default). For your security, we strongly suggest that you switch to 'auth.enabled=true'
enabled: false
# -- Replica configuration for the Redis cluster
replica:
# -- Number of Redis replica instances
replicaCount: 3
# -- Value of cluster domain
clusterDomain: cluster.local
annotations: {}
podAnnotations: {}
podLabels: {}
replicaCount: 1
# -- Strategy for updating the workload manager: deployment or statefulset
strategy: {}
# -- Open WebUI image tags can be found here: https://github.com/open-webui/open-webui
image:
repository: ghcr.io/open-webui/open-webui
tag: ""
pullPolicy: "IfNotPresent"
serviceAccount:
enable: true
name: ""
annotations: {}
automountServiceAccountToken: false
# -- Configure imagePullSecrets to use private registry
# ref: <https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry>
imagePullSecrets: []
# imagePullSecrets:
# - name: myRegistryKeySecretName
# -- Probe for liveness of the Open WebUI container
# ref: <https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes>
livenessProbe: {}
# livenessProbe:
# httpGet:
# path: /health
# port: http
# failureThreshold: 1
# periodSeconds: 10
# -- Probe for readiness of the Open WebUI container
# ref: <https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes>
readinessProbe: {}
# readinessProbe:
# httpGet:
# path: /health/db
# port: http
# failureThreshold: 1
# periodSeconds: 10
# -- Probe for startup of the Open WebUI container
# ref: <https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes>
startupProbe: {}
# startupProbe:
# httpGet:
# path: /health
# port: http
# initialDelaySeconds: 30
# periodSeconds: 5
# failureThreshold: 20
resources: {}
copyAppData:
resources: {}
managedCertificate:
enabled: true
name: "mydomain-chat-cert" # You can override this name if needed
domains:
- chat.example.com # update to your real domain
ingress:
enabled: true
class: ""
# -- Use appropriate annotations for your Ingress controller, e.g., for NGINX:
annotations:
# Example for GKE Ingress
kubernetes.io/ingress.class: "gce"
kubernetes.io/ingress.global-static-ip-name: "open-webui-external-ip" # you need to create this address in GCP console
# Force HTTP to redirect to HTTPS
nginx.ingress.kubernetes.io/force-ssl-redirect: "true"
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
additionalHosts: []
tls: false
existingSecret: ""
persistence:
enabled: true
size: 2Gi
# -- Use existingClaim if you want to re-use an existing Open WebUI PVC instead of creating a new one
existingClaim: ""
# -- Subdirectory of Open WebUI PVC to mount. Useful if root directory is not empty.
subPath: ""
# -- If using multiple replicas, you must update accessModes to ReadWriteMany
accessModes:
- ReadWriteOnce
storageClass: ""
selector: {}
annotations: {}
# -- Node labels for pod assignment.
nodeSelector: {}
# -- Tolerations for pod assignment
tolerations: []
# -- Affinity for pod assignment
affinity: {}
# -- Topology Spread Constraints for pod assignment
topologySpreadConstraints: []
# -- Service values to expose Open WebUI pods to cluster
service:
type: LoadBalancer # changed from ClusterIP to LoadBalancer for external access on GKE
annotations: {}
port: 80
containerPort: 8080
nodePort: ""
labels: {}
loadBalancerClass: ""
# -- 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: ""
# -- 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:
# -- Default API key value for Pipelines. Should be updated in a production deployment, or be changed to the required API key if not using Pipelines
- name: OPENAI_API_KEY
value: "0p3n-w3bu!"
# valueFrom:
# secretKeyRef:
# name: pipelines-api-key
# key: api-key
# - name: OPENAI_API_KEY
# valueFrom:
# secretKeyRef:
# name: openai-api-key
# key: api-key
# - name: OLLAMA_DEBUG
# value: "1"
# -- Configure container volume mounts
# ref: <https://kubernetes.io/docs/tasks/configure-pod-container/configure-volume-storage/>
volumeMounts:
initContainer: []
# - name: ""
# mountPath: ""
container: []
# - name: ""
# mountPath: ""
# -- Configure pod volumes
# ref: <https://kubernetes.io/docs/tasks/configure-pod-container/configure-volume-storage/>
volumes: []
# - name: ""
# configMap:
# name: ""
# - name: ""
# emptyDir: {}
# -- Configure pod security context
# ref: <https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-containe>
podSecurityContext:
{}
# fsGroupChangePolicy: Always
# sysctls: []
# supplementalGroups: []
# fsGroup: 1001
# -- Configure container security context
# ref: <https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-containe>
containerSecurityContext:
{}
# runAsUser: 1001
# runAsGroup: 1001
# runAsNonRoot: true
# privileged: false
# allowPrivilegeEscalation: false
# readOnlyRootFilesystem: false
# capabilities:
# drop:
# - ALL
# seccompProfile:
# type: "RuntimeDefault"
# -- Extra resources to deploy with Open WebUI
extraResources:
[]
# - apiVersion: v1
# kind: ConfigMap
# metadata:
# name: example-configmap
# data:
# example-key: example-value

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
@@ -13,7 +12,10 @@ ollama:
# type: 'nvidia'
# number: 1
# models:
# - llama3
# pull:
# - llama3
# run:
# - llama3
# runtimeClassName: nvidia
# persistentVolume:
# enabled: true
@@ -32,6 +34,9 @@ tika:
# -- A list of Ollama API endpoints. These can be added in lieu of automatically installing the Ollama Helm chart, or in addition to it.
ollamaUrls: []
# -- Disables taking Ollama Urls from `ollamaUrls` list
ollamaUrlsFromExtraEnv: false
websocket:
# -- Enables websocket support in Open WebUI with env `ENABLE_WEBSOCKET_SUPPORT`
enabled: false
@@ -49,6 +54,10 @@ websocket:
labels: {}
# -- Redis annotations
annotations: {}
# -- Redis pod
pods:
# -- Redis pod annotations
annotations: {}
# -- Redis image
image:
repository: redis
@@ -74,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:
@@ -154,13 +174,27 @@ resources: {}
copyAppData:
resources: {}
managedCertificate:
enabled: false
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:
# nginx.ingress.kubernetes.io/rewrite-target: /
annotations: {}
host: ""
# # Example for GKE Ingress
# kubernetes.io/ingress.class: "gce"
# kubernetes.io/ingress.global-static-ip-name: "open-webui-external-ip" # you need to create this address in GCP console
# # Force HTTP to redirect to HTTPS
# nginx.ingress.kubernetes.io/force-ssl-redirect: "true"
# 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
additionalHosts: []
tls: false
existingSecret: ""
@@ -190,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
@@ -200,8 +237,17 @@ 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: ""
openaiBaseApiUrl: "https://api.openai.com/v1"
# -- OpenAI base API URLs to use. Overwrites the value in openaiBaseApiUrl if set
openaiBaseApiUrls:
[]
# - "https://api.openai.com/v1"
# - "https://api.company.openai.com/v1"
# -- 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:
@@ -220,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:
@@ -230,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: []
@@ -240,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
@@ -248,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:
@@ -265,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.1.0
version: 0.5.0
appVersion: "alpha"
home: https://github.com/open-webui/pipelines

View File

@@ -1,6 +1,6 @@
# pipelines
![Version: 0.0.6](https://img.shields.io/badge/Version-0.0.6-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,7 +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 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 }}
@@ -50,6 +58,9 @@ spec:
volumeMounts:
- name: data
mountPath: /app/pipelines
{{- with .Values.volumeMounts }}
{{- toYaml . | nindent 8 }}
{{- end }}
env:
{{- if .Values.extraEnvVars }}
{{- toYaml .Values.extraEnvVars | nindent 8 }}
@@ -67,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
@@ -80,3 +95,6 @@ spec:
persistentVolumeClaim:
claimName: {{ include "pipelines.name" . }}
{{- end }}
{{- with .Values.volumes }}
{{- toYaml . | nindent 6 }}
{{- end }}

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: {}
@@ -88,6 +93,34 @@ extraEnvVars:
# - name: LANGFUSE_HOST
# value: https://us.cloud.langfuse.com
# -- Configure container volume mounts
# ref: <https://kubernetes.io/docs/tasks/configure-pod-container/configure-volume-storage/>
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: []
# - name: ""
# configMap:
# name: ""
# - name: ""
# secret:
# name: ""
# - name: ""
# emptyDir: {}
# -- Extra resources to deploy with Open WebUI Pipelines
extraResources:
[]