mirror of
https://github.com/open-webui/helm-charts
synced 2025-06-26 18:16:14 +00:00
Compare commits
97 Commits
v3.6.0
...
open-webui
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
921af38848 | ||
|
|
73268086eb | ||
|
|
2e13b26b94 | ||
|
|
32797850cd | ||
|
|
30750a96ae | ||
|
|
f187ecd6fc | ||
|
|
46068602fc | ||
|
|
e49bd4d041 | ||
|
|
b3c486f5e6 | ||
|
|
4421135184 | ||
|
|
9c9aae9660 | ||
|
|
15b9ccbf84 | ||
|
|
961d895fe4 | ||
|
|
972a24510c | ||
|
|
60864a365b | ||
|
|
64160c1750 | ||
|
|
1c9327eb4f | ||
|
|
464f194014 | ||
|
|
1b47d08288 | ||
|
|
ba068ee8c0 | ||
|
|
b894afc239 | ||
|
|
1e17c5651d | ||
|
|
0ccce3cf5f | ||
|
|
3b1bfc20d3 | ||
|
|
51aab38029 | ||
|
|
535985967d | ||
|
|
f06ddd9f2f | ||
|
|
9b13a7e2af | ||
|
|
added76a4c | ||
|
|
1c072ce5bf | ||
|
|
72a324248a | ||
|
|
069909c5f3 | ||
|
|
8ceb4ed675 | ||
|
|
5ae7d88c6d | ||
|
|
1c186f785c | ||
|
|
8d6a4745ca | ||
|
|
2a1dfd7c79 | ||
|
|
911da24970 | ||
|
|
aa8f48d65c | ||
|
|
299203bc14 | ||
|
|
669a7f4006 | ||
|
|
902852e161 | ||
|
|
35100e8c9b | ||
|
|
80eecb60b7 | ||
|
|
78358cdd0c | ||
|
|
2229cfaef1 | ||
|
|
44c982df2f | ||
|
|
5af2615a30 | ||
|
|
0e6bc2b733 | ||
|
|
38d7ecfe21 | ||
|
|
d826181995 | ||
|
|
fe387238e1 | ||
|
|
dc60612c27 | ||
|
|
3764c99690 | ||
|
|
3adaffd03d | ||
|
|
7c6aa4fc19 | ||
|
|
fe7d2bb946 | ||
|
|
aa0c381f01 | ||
|
|
de66118c42 | ||
|
|
2ef9234739 | ||
|
|
fc3a19b8d9 | ||
|
|
f70f12a720 | ||
|
|
905073b392 | ||
|
|
e2bb6c5ac4 | ||
|
|
3ac14d7ed7 | ||
|
|
f539153797 | ||
|
|
5a9e030548 | ||
|
|
357d167f76 | ||
|
|
3269b62733 | ||
|
|
373b4c8042 | ||
|
|
154753931e | ||
|
|
b9cc6a30cc | ||
|
|
db99d5cafe | ||
|
|
400512fc0e | ||
|
|
cf12b1d078 | ||
|
|
746fe34aa1 | ||
|
|
d0cf4abd11 | ||
|
|
2b83759321 | ||
|
|
67adcc38e6 | ||
|
|
831cc94d8d | ||
|
|
83c5a02a28 | ||
|
|
145a5f5933 | ||
|
|
1931f3ea06 | ||
|
|
45d5c2a26e | ||
|
|
b1e7ce6cea | ||
|
|
f71d21d5e4 | ||
|
|
30707d473d | ||
|
|
01fd07172c | ||
|
|
afcd804aaf | ||
|
|
afe30f15cb | ||
|
|
abc23d2ad4 | ||
|
|
5cf03b48a0 | ||
|
|
48ab03c9d6 | ||
|
|
1cdb232649 | ||
|
|
242bfa2827 | ||
|
|
7514e5a5d7 | ||
|
|
cba16a4f3f |
63
.github/workflows/helm-release.yml
vendored
63
.github/workflows/helm-release.yml
vendored
@@ -8,49 +8,49 @@ on:
|
|||||||
- "charts/**"
|
- "charts/**"
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
semantic-release:
|
# semantic-release:
|
||||||
runs-on: ubuntu-latest
|
# runs-on: ubuntu-latest
|
||||||
steps:
|
# steps:
|
||||||
# Checkout repo
|
# # Checkout repo
|
||||||
- name: Checkout
|
# - name: Checkout
|
||||||
uses: actions/checkout@v4
|
# uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Setup Node.js
|
# - name: Setup Node.js
|
||||||
uses: actions/setup-node@v3
|
# uses: actions/setup-node@v3
|
||||||
with:
|
# with:
|
||||||
node-version: 'lts/*'
|
# node-version: 'lts/*'
|
||||||
- name: Install dependencies
|
# - name: Install dependencies
|
||||||
run: npm install
|
# run: npm install
|
||||||
- name: Release
|
# - name: Release
|
||||||
env:
|
# env:
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
run: npx semantic-release
|
# run: npx semantic-release
|
||||||
|
|
||||||
- name: Install yq
|
# - name: Install yq
|
||||||
run: |
|
# run: |
|
||||||
wget https://github.com/mikefarah/yq/releases/latest/download/yq_linux_amd64 -O yq &&\
|
# wget https://github.com/mikefarah/yq/releases/latest/download/yq_linux_amd64 -O yq &&\
|
||||||
chmod +x yq
|
# chmod +x yq
|
||||||
|
|
||||||
- name: Get version
|
# - name: Get version
|
||||||
id: get_version
|
# id: get_version
|
||||||
run: |
|
# run: |
|
||||||
echo "VERSION=$(cat charts/open-webui/Chart.yaml | ./yq -r '.version')" >> $GITHUB_OUTPUT
|
# echo "VERSION=$(cat charts/open-webui/Chart.yaml | ./yq -r '.version')" >> $GITHUB_OUTPUT
|
||||||
|
|
||||||
- name: Commit Chart.yaml
|
# - name: Commit Chart.yaml
|
||||||
uses: stefanzweifel/git-auto-commit-action@v4
|
# uses: stefanzweifel/git-auto-commit-action@v4
|
||||||
with:
|
# with:
|
||||||
commit_message: 'chore(release) bump version to ${{ steps.get_version.outputs.VERSION }}'
|
# commit_message: 'chore(release) bump version to ${{ steps.get_version.outputs.VERSION }}'
|
||||||
file_pattern: 'charts/open-webui/Chart.yaml'
|
# file_pattern: 'charts/open-webui/Chart.yaml'
|
||||||
|
|
||||||
release:
|
release:
|
||||||
needs: semantic-release
|
#needs: semantic-release
|
||||||
permissions:
|
permissions:
|
||||||
contents: write
|
contents: write
|
||||||
packages: write
|
packages: write
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout Repository
|
- name: Checkout Repository
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
fetch-depth: 0
|
fetch-depth: 0
|
||||||
|
|
||||||
@@ -64,6 +64,7 @@ jobs:
|
|||||||
helm repo add ollama https://otwld.github.io/ollama-helm/
|
helm repo add ollama https://otwld.github.io/ollama-helm/
|
||||||
helm repo add open-webui https://helm.openwebui.com/
|
helm repo add open-webui https://helm.openwebui.com/
|
||||||
helm repo add tika https://apache.jfrog.io/artifactory/tika/
|
helm repo add tika https://apache.jfrog.io/artifactory/tika/
|
||||||
|
helm repo add redis https://charts.bitnami.com/bitnami
|
||||||
|
|
||||||
- name: Run chart-releaser
|
- name: Run chart-releaser
|
||||||
uses: helm/chart-releaser-action@v1.6.0
|
uses: helm/chart-releaser-action@v1.6.0
|
||||||
|
|||||||
54
.github/workflows/helm-test-open-webui.yml
vendored
Normal file
54
.github/workflows/helm-test-open-webui.yml
vendored
Normal file
@@ -0,0 +1,54 @@
|
|||||||
|
name: Check Open WebUI Helm Charts (open-webui)
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
paths:
|
||||||
|
- "charts/open-webui/**"
|
||||||
|
push:
|
||||||
|
paths:
|
||||||
|
- "charts/open-webui/**"
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
lint-chart:
|
||||||
|
name: Lint Helm Chart
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout Code
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Set up Helm
|
||||||
|
uses: azure/setup-helm@v4
|
||||||
|
|
||||||
|
- name: Lint open-webui Helm Chart
|
||||||
|
run: |
|
||||||
|
helm lint ./charts/open-webui
|
||||||
|
|
||||||
|
test-deploy:
|
||||||
|
name: Test Chart Deployment
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
needs: lint-chart
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout Code
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Set up kubectl
|
||||||
|
uses: azure/setup-kubectl@v4
|
||||||
|
|
||||||
|
- name: Set up Helm
|
||||||
|
uses: azure/setup-helm@v4
|
||||||
|
|
||||||
|
- name: Set up KinD Cluster
|
||||||
|
uses: helm/kind-action@v1
|
||||||
|
|
||||||
|
- name: Template open-webui Helm Chart
|
||||||
|
run: |
|
||||||
|
helm template open-webui ./charts/open-webui \
|
||||||
|
--namespace test-namespace --create-namespace > open-webui.yaml
|
||||||
|
|
||||||
|
- name: Verify open-webui
|
||||||
|
run: |
|
||||||
|
kubectl create namespace test-namespace
|
||||||
|
kubectl apply --namespace test-namespace -f open-webui.yaml
|
||||||
|
kubectl wait --namespace test-namespace pod/open-webui-0 --for=condition=Ready --timeout=600s
|
||||||
55
.github/workflows/helm-test-pipelines.yml
vendored
Normal file
55
.github/workflows/helm-test-pipelines.yml
vendored
Normal file
@@ -0,0 +1,55 @@
|
|||||||
|
name: Check Open WebUI Helm Charts (pipelines)
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
paths:
|
||||||
|
- "charts/pipelines/**"
|
||||||
|
push:
|
||||||
|
paths:
|
||||||
|
- "charts/pipelines/**"
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
lint-chart:
|
||||||
|
name: Lint Helm Chart
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout Code
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Set up Helm
|
||||||
|
uses: azure/setup-helm@v4
|
||||||
|
|
||||||
|
- name: Lint pipelines Helm Chart
|
||||||
|
run: |
|
||||||
|
helm lint ./charts/pipelines
|
||||||
|
|
||||||
|
test-deploy:
|
||||||
|
name: Test Chart Deployment
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
needs: lint-chart
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout Code
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Set up kubectl
|
||||||
|
uses: azure/setup-kubectl@v4
|
||||||
|
|
||||||
|
- name: Set up Helm
|
||||||
|
uses: azure/setup-helm@v4
|
||||||
|
|
||||||
|
- name: Set up KinD Cluster
|
||||||
|
uses: helm/kind-action@v1
|
||||||
|
|
||||||
|
- name: Template open-webui Helm Chart
|
||||||
|
run: |
|
||||||
|
helm template pipelines ./charts/pipelines \
|
||||||
|
--namespace test-namespace --create-namespace > pipelines.yaml
|
||||||
|
|
||||||
|
- name: Verify pipelines
|
||||||
|
run: |
|
||||||
|
kubectl create namespace test-namespace
|
||||||
|
kubectl apply --namespace test-namespace -f pipelines.yaml
|
||||||
|
PIPELINE_POD=$(kubectl get --namespace test-namespace pod -L app.kubernetes.io/component=pipelines -o jsonpath='{.items[*].metadata.name}')
|
||||||
|
kubectl wait --namespace test-namespace pod/${PIPELINE_POD} --for=condition=Ready --timeout=600s
|
||||||
125
.gitignore
vendored
Normal file
125
.gitignore
vendored
Normal file
@@ -0,0 +1,125 @@
|
|||||||
|
# Created by https://www.toptal.com/developers/gitignore/api/macos,intellij+all,helm
|
||||||
|
# Edit at https://www.toptal.com/developers/gitignore?templates=macos,intellij+all,helm
|
||||||
|
|
||||||
|
### Intellij+all ###
|
||||||
|
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider
|
||||||
|
# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839
|
||||||
|
|
||||||
|
# User-specific stuff
|
||||||
|
.idea/**/workspace.xml
|
||||||
|
.idea/**/tasks.xml
|
||||||
|
.idea/**/usage.statistics.xml
|
||||||
|
.idea/**/dictionaries
|
||||||
|
.idea/**/shelf
|
||||||
|
|
||||||
|
# AWS User-specific
|
||||||
|
.idea/**/aws.xml
|
||||||
|
|
||||||
|
# Generated files
|
||||||
|
.idea/**/contentModel.xml
|
||||||
|
|
||||||
|
# Sensitive or high-churn files
|
||||||
|
.idea/**/dataSources/
|
||||||
|
.idea/**/dataSources.ids
|
||||||
|
.idea/**/dataSources.local.xml
|
||||||
|
.idea/**/sqlDataSources.xml
|
||||||
|
.idea/**/dynamic.xml
|
||||||
|
.idea/**/uiDesigner.xml
|
||||||
|
.idea/**/dbnavigator.xml
|
||||||
|
|
||||||
|
# Gradle
|
||||||
|
.idea/**/gradle.xml
|
||||||
|
.idea/**/libraries
|
||||||
|
|
||||||
|
# Gradle and Maven with auto-import
|
||||||
|
# When using Gradle or Maven with auto-import, you should exclude module files,
|
||||||
|
# since they will be recreated, and may cause churn. Uncomment if using
|
||||||
|
# auto-import.
|
||||||
|
# .idea/artifacts
|
||||||
|
# .idea/compiler.xml
|
||||||
|
# .idea/jarRepositories.xml
|
||||||
|
# .idea/modules.xml
|
||||||
|
# .idea/*.iml
|
||||||
|
# .idea/modules
|
||||||
|
# *.iml
|
||||||
|
# *.ipr
|
||||||
|
|
||||||
|
# CMake
|
||||||
|
cmake-build-*/
|
||||||
|
|
||||||
|
# Mongo Explorer plugin
|
||||||
|
.idea/**/mongoSettings.xml
|
||||||
|
|
||||||
|
# File-based project format
|
||||||
|
*.iws
|
||||||
|
|
||||||
|
# IntelliJ
|
||||||
|
out/
|
||||||
|
|
||||||
|
# mpeltonen/sbt-idea plugin
|
||||||
|
.idea_modules/
|
||||||
|
|
||||||
|
# JIRA plugin
|
||||||
|
atlassian-ide-plugin.xml
|
||||||
|
|
||||||
|
# Cursive Clojure plugin
|
||||||
|
.idea/replstate.xml
|
||||||
|
|
||||||
|
# SonarLint plugin
|
||||||
|
.idea/sonarlint/
|
||||||
|
|
||||||
|
# Crashlytics plugin (for Android Studio and IntelliJ)
|
||||||
|
com_crashlytics_export_strings.xml
|
||||||
|
crashlytics.properties
|
||||||
|
crashlytics-build.properties
|
||||||
|
fabric.properties
|
||||||
|
|
||||||
|
# Editor-based Rest Client
|
||||||
|
.idea/httpRequests
|
||||||
|
|
||||||
|
# Android studio 3.1+ serialized cache file
|
||||||
|
.idea/caches/build_file_checksums.ser
|
||||||
|
|
||||||
|
### Intellij+all Patch ###
|
||||||
|
# Ignore everything but code style settings and run configurations
|
||||||
|
# that are supposed to be shared within teams.
|
||||||
|
|
||||||
|
.idea/*
|
||||||
|
|
||||||
|
!.idea/codeStyles
|
||||||
|
!.idea/runConfigurations
|
||||||
|
|
||||||
|
### macOS ###
|
||||||
|
# General
|
||||||
|
.DS_Store
|
||||||
|
.AppleDouble
|
||||||
|
.LSOverride
|
||||||
|
|
||||||
|
# Icon must end with two \r
|
||||||
|
Icon
|
||||||
|
|
||||||
|
|
||||||
|
# Thumbnails
|
||||||
|
._*
|
||||||
|
|
||||||
|
# Files that might appear in the root of a volume
|
||||||
|
.DocumentRevisions-V100
|
||||||
|
.fseventsd
|
||||||
|
.Spotlight-V100
|
||||||
|
.TemporaryItems
|
||||||
|
.Trashes
|
||||||
|
.VolumeIcon.icns
|
||||||
|
.com.apple.timemachine.donotpresent
|
||||||
|
|
||||||
|
# Directories potentially created on remote AFP share
|
||||||
|
.AppleDB
|
||||||
|
.AppleDesktop
|
||||||
|
Network Trash Folder
|
||||||
|
Temporary Items
|
||||||
|
.apdisk
|
||||||
|
|
||||||
|
### macOS Patch ###
|
||||||
|
# iCloud generated files
|
||||||
|
*.icloud
|
||||||
|
|
||||||
|
# End of https://www.toptal.com/developers/gitignore/api/macos,intellij+all,helm
|
||||||
@@ -30,6 +30,8 @@
|
|||||||
|
|
||||||
- **Issues**: If you find any issues or have suggestions for improvements, please create a new issue in the repository before working on a Pull Request.
|
- **Issues**: If you find any issues or have suggestions for improvements, please create a new issue in the repository before working on a Pull Request.
|
||||||
|
|
||||||
|
- **Actions Updates**: If your Pull Request includes adding a new chart dependency, ensure to make the necessary updates to Github Actions to add the chart repo dependency, or else the release run will fail.
|
||||||
|
|
||||||
## Getting Help
|
## Getting Help
|
||||||
|
|
||||||
If you need any help or have questions about contributing, feel free to reach out to the maintainers of the repository.
|
If you need any help or have questions about contributing, feel free to reach out to the maintainers of the repository.
|
||||||
|
|||||||
@@ -1,12 +1,15 @@
|
|||||||
dependencies:
|
dependencies:
|
||||||
- name: ollama
|
- name: ollama
|
||||||
repository: https://otwld.github.io/ollama-helm/
|
repository: https://otwld.github.io/ollama-helm/
|
||||||
version: 0.64.0
|
version: 1.3.0
|
||||||
- name: pipelines
|
- name: pipelines
|
||||||
repository: https://helm.openwebui.com
|
repository: https://helm.openwebui.com
|
||||||
version: 0.0.4
|
version: 0.0.6
|
||||||
- name: tika
|
- name: tika
|
||||||
repository: https://apache.jfrog.io/artifactory/tika
|
repository: https://apache.jfrog.io/artifactory/tika
|
||||||
version: 2.9.0
|
version: 2.9.0
|
||||||
digest: sha256:91c12b702598527a8b602af6f229f975abc8bd7cf95c31324bc013bb919ff14e
|
- name: redis
|
||||||
generated: "2024-11-07T14:14:55.798831-07:10"
|
repository: https://charts.bitnami.com/bitnami
|
||||||
|
version: 20.6.3
|
||||||
|
digest: sha256:b0e3a4613e4f5b9ad2766cafb111b2c03dff1ba1774217ed21fb9fd5556729f4
|
||||||
|
generated: "2025-01-16T14:22:56.662663-07:00"
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
apiVersion: v2
|
apiVersion: v2
|
||||||
name: open-webui
|
name: open-webui
|
||||||
version: 3.6.0
|
version: 5.4.0
|
||||||
appVersion: 0.3.36
|
appVersion: 0.5.4
|
||||||
home: https://www.openwebui.com/
|
home: https://www.openwebui.com/
|
||||||
icon: >-
|
icon: >-
|
||||||
https://raw.githubusercontent.com/open-webui/open-webui/main/static/favicon.png
|
https://raw.githubusercontent.com/open-webui/open-webui/main/static/favicon.png
|
||||||
@@ -10,11 +10,13 @@ keywords:
|
|||||||
- llm
|
- llm
|
||||||
- chat
|
- chat
|
||||||
- web-ui
|
- web-ui
|
||||||
|
- open-webui
|
||||||
sources:
|
sources:
|
||||||
- https://github.com/open-webui/helm-charts
|
- https://github.com/open-webui/helm-charts
|
||||||
- https://github.com/open-webui/open-webui/pkgs/container/open-webui
|
- https://github.com/open-webui/open-webui/pkgs/container/open-webui
|
||||||
- https://github.com/otwld/ollama-helm/
|
- https://github.com/otwld/ollama-helm/
|
||||||
- https://hub.docker.com/r/ollama/ollama
|
- https://hub.docker.com/r/ollama/ollama
|
||||||
|
- https://charts.bitnami.com/bitnami
|
||||||
annotations:
|
annotations:
|
||||||
licenses: MIT
|
licenses: MIT
|
||||||
dependencies:
|
dependencies:
|
||||||
@@ -36,3 +38,8 @@ dependencies:
|
|||||||
repository: https://apache.jfrog.io/artifactory/tika
|
repository: https://apache.jfrog.io/artifactory/tika
|
||||||
version: '>=2.9.0'
|
version: '>=2.9.0'
|
||||||
condition: tika.enabled
|
condition: tika.enabled
|
||||||
|
- name: redis
|
||||||
|
repository: https://charts.bitnami.com/bitnami
|
||||||
|
version: '>=20.6.2'
|
||||||
|
alias: redis-cluster
|
||||||
|
condition: redis-cluster.enabled
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
# open-webui
|
# open-webui
|
||||||
|
|
||||||
 
|
 
|
||||||
|
|
||||||
Open WebUI: A User-Friendly Web Interface for Chat Interactions 👋
|
Open WebUI: A User-Friendly Web Interface for Chat Interactions 👋
|
||||||
|
|
||||||
@@ -33,6 +33,7 @@ helm upgrade --install open-webui open-webui/open-webui
|
|||||||
| Repository | Name | Version |
|
| Repository | Name | Version |
|
||||||
|------------|------|---------|
|
|------------|------|---------|
|
||||||
| https://apache.jfrog.io/artifactory/tika | tika | >=2.9.0 |
|
| https://apache.jfrog.io/artifactory/tika | tika | >=2.9.0 |
|
||||||
|
| https://charts.bitnami.com/bitnami | redis-cluster(redis) | >=20.6.2 |
|
||||||
| https://helm.openwebui.com | pipelines | >=0.0.1 |
|
| https://helm.openwebui.com | pipelines | >=0.0.1 |
|
||||||
| https://otwld.github.io/ollama-helm/ | ollama | >=0.24.0 |
|
| https://otwld.github.io/ollama-helm/ | ollama | >=0.24.0 |
|
||||||
|
|
||||||
@@ -44,17 +45,22 @@ helm upgrade --install open-webui open-webui/open-webui
|
|||||||
| annotations | object | `{}` | |
|
| annotations | object | `{}` | |
|
||||||
| clusterDomain | string | `"cluster.local"` | Value of cluster domain |
|
| 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> |
|
| 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 | `{}` | |
|
||||||
| 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 | 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 |
|
| extraEnvVars[0] | object | `{"name":"OPENAI_API_KEY","value":"0p3n-w3bu!"}` | Default API key value for Pipelines. Should be updated in a production deployment, or be changed to the required API key if not using Pipelines |
|
||||||
| image | object | `{"pullPolicy":"IfNotPresent","repository":"ghcr.io/open-webui/open-webui","tag":""}` | Open WebUI image tags can be found here: https://github.com/open-webui/open-webui/pkgs/container/open-webui |
|
| extraResources | list | `[]` | Extra resources to deploy with Open WebUI |
|
||||||
|
| 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> |
|
| 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: nginx.ingress.kubernetes.io/rewrite-target: / |
|
||||||
| ingress.class | string | `""` | |
|
| ingress.class | string | `""` | |
|
||||||
| ingress.enabled | bool | `false` | |
|
| ingress.enabled | bool | `false` | |
|
||||||
| ingress.existingSecret | string | `""` | |
|
| ingress.existingSecret | string | `""` | |
|
||||||
| ingress.host | string | `""` | |
|
| ingress.host | string | `""` | |
|
||||||
| ingress.tls | bool | `false` | |
|
| 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> |
|
||||||
| nameOverride | string | `""` | |
|
| nameOverride | string | `""` | |
|
||||||
|
| namespaceOverride | string | `""` | |
|
||||||
| nodeSelector | object | `{}` | Node labels for pod assignment. |
|
| 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.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 |
|
| 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 |
|
||||||
@@ -71,15 +77,49 @@ helm upgrade --install open-webui open-webui/open-webui
|
|||||||
| pipelines.enabled | bool | `true` | Automatically install Pipelines chart to extend Open WebUI functionality using Pipelines: https://github.com/open-webui/pipelines |
|
| pipelines.enabled | bool | `true` | Automatically install Pipelines chart to extend Open WebUI functionality using Pipelines: https://github.com/open-webui/pipelines |
|
||||||
| pipelines.extraEnvVars | list | `[]` | This section can be used to pass required environment variables to your pipelines (e.g. Langfuse hostname) |
|
| pipelines.extraEnvVars | list | `[]` | This section can be used to pass required environment variables to your pipelines (e.g. Langfuse hostname) |
|
||||||
| podAnnotations | object | `{}` | |
|
| 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-containe> |
|
||||||
|
| 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 |
|
||||||
|
| redis-cluster.auth.enabled | bool | `false` | Enable Redis authentication (disabled by default). For your security, we strongly suggest that you switch to 'auth.enabled=true' |
|
||||||
|
| redis-cluster.enabled | bool | `false` | Enable Redis installation |
|
||||||
|
| redis-cluster.fullnameOverride | string | `"open-webui-redis"` | 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' |
|
||||||
|
| redis-cluster.replica | object | `{"replicaCount":3}` | Replica configuration for the Redis cluster |
|
||||||
|
| redis-cluster.replica.replicaCount | int | `3` | Number of Redis replica instances |
|
||||||
| replicaCount | int | `1` | |
|
| replicaCount | int | `1` | |
|
||||||
| resources | object | `{}` | |
|
| resources | object | `{}` | |
|
||||||
| service | object | `{"annotations":{},"containerPort":8080,"labels":{},"loadBalancerClass":"","nodePort":"","port":80,"type":"ClusterIP"}` | Service values to expose Open WebUI pods to cluster |
|
| 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` | |
|
||||||
|
| serviceAccount.enable | bool | `true` | |
|
||||||
|
| serviceAccount.name | string | `""` | |
|
||||||
|
| startupProbe | object | `{}` | Probe for startup of the Open WebUI container ref: <https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes> |
|
||||||
|
| strategy | object | `{}` | Strategy for updating the workload manager: deployment or statefulset |
|
||||||
| tika.enabled | bool | `false` | Automatically install Apache Tika to extend Open WebUI |
|
| tika.enabled | bool | `false` | Automatically install Apache Tika to extend Open WebUI |
|
||||||
| tolerations | list | `[]` | Tolerations for pod assignment |
|
| tolerations | list | `[]` | Tolerations for pod assignment |
|
||||||
| topologySpreadConstraints | list | `[]` | Topology Spread Constraints for pod assignment |
|
| topologySpreadConstraints | list | `[]` | Topology Spread Constraints for pod assignment |
|
||||||
| volumeMounts | object | `{"container":[],"initContainer":[]}` | Configure container volume mounts ref: <https://kubernetes.io/docs/tasks/configure-pod-container/configure-volume-storage/> |
|
| volumeMounts | object | `{"container":[],"initContainer":[]}` | 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/> |
|
| 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.annotations | object | `{}` | Redis annotations |
|
||||||
|
| websocket.redis.args | list | `[]` | Redis arguments (overrides default) |
|
||||||
|
| websocket.redis.command | list | `[]` | Redis command (overrides default) |
|
||||||
|
| websocket.redis.enabled | bool | `true` | Enable redis installation |
|
||||||
|
| 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.resources | object | `{}` | Redis resources |
|
||||||
|
| 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 |
|
||||||
|
| websocket.redis.service.labels | object | `{}` | Redis service labels |
|
||||||
|
| 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.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.
BIN
charts/open-webui/charts/ollama-1.3.0.tgz
Normal file
BIN
charts/open-webui/charts/ollama-1.3.0.tgz
Normal file
Binary file not shown.
Binary file not shown.
BIN
charts/open-webui/charts/pipelines-0.0.6.tgz
Normal file
BIN
charts/open-webui/charts/pipelines-0.0.6.tgz
Normal file
Binary file not shown.
BIN
charts/open-webui/charts/redis-20.6.3.tgz
Normal file
BIN
charts/open-webui/charts/redis-20.6.3.tgz
Normal file
Binary file not shown.
77
charts/open-webui/templates/NOTES.txt
Normal file
77
charts/open-webui/templates/NOTES.txt
Normal file
@@ -0,0 +1,77 @@
|
|||||||
|
{{- `
|
||||||
|
🎉 Welcome to Open WebUI!!
|
||||||
|
___ __ __ _ _ _ ___
|
||||||
|
/ _ \ _ __ ___ _ __ \ \ / /__| |__ | | | |_ _|
|
||||||
|
| | | | '_ \ / _ \ '_ \ \ \ /\ / / _ \ '_ \| | | || |
|
||||||
|
| |_| | |_) | __/ | | | \ V V / __/ |_) | |_| || |
|
||||||
|
\___/| .__/ \___|_| |_| \_/\_/ \___|_.__/ \___/|___|
|
||||||
|
|_|
|
||||||
|
` }}
|
||||||
|
v{{ .Chart.AppVersion }} - building the best open-source AI user interface.
|
||||||
|
- Chart Version: v{{ .Chart.Version }}
|
||||||
|
- Project URL 1: {{ .Chart.Home }}
|
||||||
|
- Project URL 2: https://github.com/open-webui/open-webui
|
||||||
|
- Documentation: https://docs.openwebui.com/
|
||||||
|
- Chart URL: https://github.com/open-webui/helm-charts
|
||||||
|
|
||||||
|
Open WebUI is a web-based user interface that works with Ollama, OpenAI, Claude 3, Gemini and more.
|
||||||
|
This interface allows you to easily interact with local AI models.
|
||||||
|
|
||||||
|
1. Deployment Information:
|
||||||
|
- Chart Name: {{ .Chart.Name }}
|
||||||
|
- Release Name: {{ .Release.Name }}
|
||||||
|
- Namespace: {{ .Release.Namespace }}
|
||||||
|
|
||||||
|
2. Access the Application:
|
||||||
|
{{- if contains "ClusterIP" .Values.service.type }}
|
||||||
|
Access via ClusterIP service:
|
||||||
|
|
||||||
|
export LOCAL_PORT=8080
|
||||||
|
export POD_NAME=$(kubectl get pods -n {{ .Release.Namespace }} -l "app.kubernetes.io/component={{ include "open-webui.name" . }}" -o jsonpath="{.items[0].metadata.name}")
|
||||||
|
export CONTAINER_PORT=$(kubectl get pod -n {{ .Release.Namespace }} $POD_NAME -o jsonpath="{.spec.containers[0].ports[0].containerPort}")
|
||||||
|
kubectl -n {{ .Release.Namespace }} port-forward $POD_NAME $LOCAL_PORT:$CONTAINER_PORT
|
||||||
|
echo "Visit http://127.0.0.1:$LOCAL_PORT to use your application"
|
||||||
|
|
||||||
|
Then, access the application at: http://127.0.0.1:$LOCAL_PORT or http://localhost:8080
|
||||||
|
|
||||||
|
{{- else if contains "NodePort" .Values.service.type }}
|
||||||
|
Access via NodePort service:
|
||||||
|
export NODE_PORT=$(kubectl get -n {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "open-webui.name" . }})
|
||||||
|
export NODE_IP=$(kubectl get nodes -o jsonpath="{.items[0].status.addresses[0].address}")
|
||||||
|
echo http://$NODE_IP:$NODE_PORT
|
||||||
|
|
||||||
|
{{- else if contains "LoadBalancer" .Values.service.type }}
|
||||||
|
Access via LoadBalancer service:
|
||||||
|
NOTE: It may take a few minutes for the LoadBalancer IP to be available.
|
||||||
|
NOTE: The external address format depends on your cloud provider:
|
||||||
|
- AWS: Will return a hostname (e.g., xxx.elb.amazonaws.com)
|
||||||
|
- GCP/Azure: Will return an IP address
|
||||||
|
You can watch the status by running:
|
||||||
|
|
||||||
|
kubectl get -n {{ .Release.Namespace }} svc {{ include "open-webui.name" . }} --watch
|
||||||
|
export EXTERNAL_IP=$(kubectl get -n {{ .Release.Namespace }} svc {{ include "open-webui.name" . }} -o jsonpath="{.status.loadBalancer.ingress[0].hostname:-.status.loadBalancer.ingress[0].ip}")
|
||||||
|
echo http://$EXTERNAL_IP:{{ .Values.service.port }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{- if .Values.ingress.enabled }}
|
||||||
|
|
||||||
|
Ingress is enabled. Access the application at: http{{ if .Values.ingress.tls }}s{{ end }}://{{ .Values.ingress.host }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
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 logs:
|
||||||
|
{{- if .Values.persistence.enabled }}
|
||||||
|
kubectl logs -f statefulset/{{ include "open-webui.name" . }} -n {{ .Release.Namespace }}
|
||||||
|
{{- else }}
|
||||||
|
kubectl logs -f deployment/{{ include "open-webui.name" . }} -n {{ .Release.Namespace }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
4. Cleanup:
|
||||||
|
- Uninstall the deployment:
|
||||||
|
helm uninstall {{ .Release.Name }} -n {{ .Release.Namespace }}
|
||||||
@@ -1,3 +1,14 @@
|
|||||||
|
{{/*
|
||||||
|
Allow the release namespace to be overridden for multi-namespace deployments in combined charts
|
||||||
|
*/}}
|
||||||
|
{{- define "open-webui.namespace" -}}
|
||||||
|
{{- if .Values.namespaceOverride -}}
|
||||||
|
{{- .Values.namespaceOverride -}}
|
||||||
|
{{- else -}}
|
||||||
|
{{- .Release.Namespace -}}
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
{{/*
|
{{/*
|
||||||
Set the name of the Open WebUI resources
|
Set the name of the Open WebUI resources
|
||||||
*/}}
|
*/}}
|
||||||
@@ -141,4 +152,20 @@ Create the service endpoint to use for Pipelines if the subchart is used
|
|||||||
{{- $pipelinesServicePort := .Values.pipelines.service.port | toString }}
|
{{- $pipelinesServicePort := .Values.pipelines.service.port | toString }}
|
||||||
{{- printf "http://%s.%s.svc.%s:%s" (include "pipelines.name" .) (.Release.Namespace) $clusterDomain $pipelinesServicePort }}
|
{{- printf "http://%s.%s.svc.%s:%s" (include "pipelines.name" .) (.Release.Namespace) $clusterDomain $pipelinesServicePort }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create selector labels to include on chart all websocket resources
|
||||||
|
*/}}
|
||||||
|
{{- define "websocket.redis.selectorLabels" -}}
|
||||||
|
{{ include "base.selectorLabels" . }}
|
||||||
|
app.kubernetes.io/component: {{ .Values.websocket.redis.name }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create labels to include on chart all websocket resources
|
||||||
|
*/}}
|
||||||
|
{{- define "websocket.redis.labels" -}}
|
||||||
|
{{ include "base.labels" . }}
|
||||||
|
{{ include "websocket.redis.selectorLabels" . }}
|
||||||
|
{{- end }}
|
||||||
|
|||||||
6
charts/open-webui/templates/extra-resources.yaml
Normal file
6
charts/open-webui/templates/extra-resources.yaml
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
{{- if .Values.extraResources }}
|
||||||
|
{{- range .Values.extraResources }}
|
||||||
|
---
|
||||||
|
{{ toYaml . | nindent 0 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
@@ -3,6 +3,7 @@ apiVersion: networking.k8s.io/v1
|
|||||||
kind: Ingress
|
kind: Ingress
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ include "open-webui.name" . }}
|
name: {{ include "open-webui.name" . }}
|
||||||
|
namespace: {{ include "open-webui.namespace" . }}
|
||||||
labels:
|
labels:
|
||||||
{{- include "open-webui.labels" . | nindent 4 }}
|
{{- include "open-webui.labels" . | nindent 4 }}
|
||||||
{{- with .Values.ingress.annotations }}
|
{{- with .Values.ingress.annotations }}
|
||||||
@@ -17,6 +18,9 @@ spec:
|
|||||||
tls:
|
tls:
|
||||||
- hosts:
|
- hosts:
|
||||||
- {{ .Values.ingress.host | quote }}
|
- {{ .Values.ingress.host | quote }}
|
||||||
|
{{- range .Values.ingress.additionalHosts }}
|
||||||
|
- {{ . | quote }}
|
||||||
|
{{- end }}
|
||||||
secretName: {{ default (printf "%s-tls" .Release.Name) .Values.ingress.existingSecret }}
|
secretName: {{ default (printf "%s-tls" .Release.Name) .Values.ingress.existingSecret }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
rules:
|
rules:
|
||||||
@@ -30,4 +34,16 @@ spec:
|
|||||||
name: {{ include "open-webui.name" . }}
|
name: {{ include "open-webui.name" . }}
|
||||||
port:
|
port:
|
||||||
name: http
|
name: http
|
||||||
|
{{- range .Values.ingress.additionalHosts }}
|
||||||
|
- host: {{ . | quote }}
|
||||||
|
http:
|
||||||
|
paths:
|
||||||
|
- path: /
|
||||||
|
pathType: Prefix
|
||||||
|
backend:
|
||||||
|
service:
|
||||||
|
name: {{ include "open-webui.name" $ }}
|
||||||
|
port:
|
||||||
|
name: http
|
||||||
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ apiVersion: v1
|
|||||||
kind: PersistentVolumeClaim
|
kind: PersistentVolumeClaim
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ include "open-webui.name" . }}
|
name: {{ include "open-webui.name" . }}
|
||||||
|
namespace: {{ include "open-webui.namespace" . }}
|
||||||
labels:
|
labels:
|
||||||
{{- include "open-webui.selectorLabels" . | nindent 4 }}
|
{{- include "open-webui.selectorLabels" . | nindent 4 }}
|
||||||
{{- with .Values.persistence.annotations }}
|
{{- with .Values.persistence.annotations }}
|
||||||
|
|||||||
14
charts/open-webui/templates/service-account.yaml
Normal file
14
charts/open-webui/templates/service-account.yaml
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
{{- if .Values.serviceAccount.enable }}
|
||||||
|
apiVersion: v1
|
||||||
|
kind: ServiceAccount
|
||||||
|
metadata:
|
||||||
|
name: {{ .Values.serviceAccount.name | default (include "open-webui.name" .) }}
|
||||||
|
namespace: {{ include "open-webui.namespace" . }}
|
||||||
|
labels:
|
||||||
|
{{- include "open-webui.labels" . | nindent 4 }}
|
||||||
|
{{- with .Values.serviceAccount.annotations }}
|
||||||
|
annotations:
|
||||||
|
{{- toYaml . | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }}
|
||||||
|
{{- end }}
|
||||||
@@ -2,6 +2,7 @@ apiVersion: v1
|
|||||||
kind: Service
|
kind: Service
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ include "open-webui.name" . }}
|
name: {{ include "open-webui.name" . }}
|
||||||
|
namespace: {{ include "open-webui.namespace" . }}
|
||||||
labels:
|
labels:
|
||||||
{{- include "open-webui.labels" . | nindent 4 }}
|
{{- include "open-webui.labels" . | nindent 4 }}
|
||||||
{{- with .Values.service.labels }}
|
{{- with .Values.service.labels }}
|
||||||
|
|||||||
71
charts/open-webui/templates/websocket-redis.yaml
Normal file
71
charts/open-webui/templates/websocket-redis.yaml
Normal file
@@ -0,0 +1,71 @@
|
|||||||
|
{{- if and .Values.websocket.enabled .Values.websocket.redis.enabled }}
|
||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: {{ .Values.websocket.redis.name }}
|
||||||
|
namespace: {{ include "open-webui.namespace" . }}
|
||||||
|
labels:
|
||||||
|
{{- include "websocket.redis.labels" . | nindent 4 }}
|
||||||
|
{{- with .Values.websocket.redis.labels }}
|
||||||
|
{{- toYaml . | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
annotations:
|
||||||
|
{{- with .Values.websocket.redis.annotations }}
|
||||||
|
{{- toYaml . | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
{{- include "websocket.redis.selectorLabels" . | nindent 6 }}
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
{{- include "websocket.redis.labels" . | nindent 8 }}
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- name: {{ .Values.websocket.redis.name }}
|
||||||
|
image: "{{ .Values.websocket.redis.image.repository }}:{{ .Values.websocket.redis.image.tag }}"
|
||||||
|
imagePullPolicy: {{ .Values.websocket.redis.image.pullPolicy }}
|
||||||
|
{{- with .Values.websocket.redis.command }}
|
||||||
|
command:
|
||||||
|
{{- toYaml . | nindent 10 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.websocket.redis.args }}
|
||||||
|
args:
|
||||||
|
{{- toYaml . | nindent 10 }}
|
||||||
|
{{- end }}
|
||||||
|
ports:
|
||||||
|
- name: http
|
||||||
|
containerPort: {{ .Values.websocket.redis.service.containerPort }}
|
||||||
|
{{- with .Values.websocket.redis.resources }}
|
||||||
|
resources:
|
||||||
|
{{- toYaml . | nindent 10 }}
|
||||||
|
{{- end }}
|
||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: {{ .Values.websocket.redis.name }}
|
||||||
|
namespace: {{ include "open-webui.namespace" . }}
|
||||||
|
labels:
|
||||||
|
{{- include "websocket.redis.labels" . | nindent 4 }}
|
||||||
|
{{- with .Values.websocket.redis.labels }}
|
||||||
|
{{- toYaml . | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
annotations:
|
||||||
|
{{- with .Values.websocket.redis.service.annotations }}
|
||||||
|
{{- toYaml . | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
{{- include "websocket.redis.selectorLabels" . | nindent 4 }}
|
||||||
|
type: {{ .Values.websocket.redis.service.type | default "ClusterIP" }}
|
||||||
|
ports:
|
||||||
|
- protocol: TCP
|
||||||
|
name: http
|
||||||
|
port: {{ .Values.websocket.redis.service.port }}
|
||||||
|
targetPort: http
|
||||||
|
{{- if .Values.websocket.redis.service.nodePort }}
|
||||||
|
nodePort: {{ .Values.websocket.redis.service.nodePort | int }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
@@ -6,6 +6,7 @@ kind: Deployment
|
|||||||
{{- end }}
|
{{- end }}
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ include "open-webui.name" . }}
|
name: {{ include "open-webui.name" . }}
|
||||||
|
namespace: {{ include "open-webui.namespace" . }}
|
||||||
labels:
|
labels:
|
||||||
{{- include "open-webui.labels" . | nindent 4 }}
|
{{- include "open-webui.labels" . | nindent 4 }}
|
||||||
{{- with .Values.annotations }}
|
{{- with .Values.annotations }}
|
||||||
@@ -20,10 +21,22 @@ spec:
|
|||||||
selector:
|
selector:
|
||||||
matchLabels:
|
matchLabels:
|
||||||
{{- include "open-webui.selectorLabels" . | nindent 6 }}
|
{{- include "open-webui.selectorLabels" . | nindent 6 }}
|
||||||
|
{{- if .Values.strategy }}
|
||||||
|
{{- if .Values.persistence.enabled }}
|
||||||
|
updateStrategy:
|
||||||
|
{{- toYaml .Values.strategy | nindent 4 }}
|
||||||
|
{{- else }}
|
||||||
|
strategy:
|
||||||
|
{{- toYaml .Values.strategy | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
template:
|
template:
|
||||||
metadata:
|
metadata:
|
||||||
labels:
|
labels:
|
||||||
{{- include "open-webui.labels" . | nindent 8 }}
|
{{- include "open-webui.labels" . | nindent 8 }}
|
||||||
|
{{- with .Values.podLabels }}
|
||||||
|
{{- toYaml . | nindent 8 }}
|
||||||
|
{{- end }}
|
||||||
{{- with .Values.podAnnotations }}
|
{{- with .Values.podAnnotations }}
|
||||||
annotations:
|
annotations:
|
||||||
{{- toYaml . | nindent 8 }}
|
{{- toYaml . | nindent 8 }}
|
||||||
@@ -44,6 +57,9 @@ spec:
|
|||||||
securityContext:
|
securityContext:
|
||||||
{{- toYaml . | nindent 10 }}
|
{{- toYaml . | nindent 10 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
{{- with .Values.copyAppData.resources }}
|
||||||
|
resources: {{- toYaml . | nindent 10 }}
|
||||||
|
{{- end }}
|
||||||
volumeMounts:
|
volumeMounts:
|
||||||
- name: data
|
- name: data
|
||||||
mountPath: /tmp/app-data
|
mountPath: /tmp/app-data
|
||||||
@@ -54,7 +70,10 @@ spec:
|
|||||||
{{- toYaml . | nindent 8 }}
|
{{- toYaml . | nindent 8 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
enableServiceLinks: false
|
enableServiceLinks: false
|
||||||
automountServiceAccountToken: false
|
automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }}
|
||||||
|
{{- if .Values.serviceAccount.enable }}
|
||||||
|
serviceAccountName: {{ .Values.serviceAccount.name | default (include "open-webui.name" .) }}
|
||||||
|
{{- end }}
|
||||||
{{- with .Values.podSecurityContext }}
|
{{- with .Values.podSecurityContext }}
|
||||||
securityContext:
|
securityContext:
|
||||||
{{- toYaml . | nindent 8 }}
|
{{- toYaml . | nindent 8 }}
|
||||||
@@ -68,6 +87,15 @@ spec:
|
|||||||
ports:
|
ports:
|
||||||
- name: http
|
- name: http
|
||||||
containerPort: {{ .Values.service.containerPort }}
|
containerPort: {{ .Values.service.containerPort }}
|
||||||
|
{{- with .Values.livenessProbe }}
|
||||||
|
livenessProbe: {{- toYaml . | nindent 10 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.readinessProbe }}
|
||||||
|
readinessProbe: {{- toYaml . | nindent 10 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.startupProbe }}
|
||||||
|
startupProbe: {{- toYaml . | nindent 10 }}
|
||||||
|
{{- end }}
|
||||||
{{- with .Values.resources }}
|
{{- with .Values.resources }}
|
||||||
resources: {{- toYaml . | nindent 10 }}
|
resources: {{- toYaml . | nindent 10 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
@@ -107,6 +135,14 @@ spec:
|
|||||||
- name: "TIKA_SERVER_URL"
|
- name: "TIKA_SERVER_URL"
|
||||||
value: http://{{ .Chart.Name }}-tika:9998
|
value: http://{{ .Chart.Name }}-tika:9998
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
{{- if .Values.websocket.enabled }}
|
||||||
|
- name: "ENABLE_WEBSOCKET_SUPPORT"
|
||||||
|
value: "True"
|
||||||
|
- name: "WEBSOCKET_MANAGER"
|
||||||
|
value: {{ .Values.websocket.manager | default "redis" | quote }}
|
||||||
|
- name: "WEBSOCKET_REDIS_URL"
|
||||||
|
value: {{ .Values.websocket.url | quote }}
|
||||||
|
{{- end }}
|
||||||
tty: true
|
tty: true
|
||||||
{{- with .Values.nodeSelector }}
|
{{- with .Values.nodeSelector }}
|
||||||
nodeSelector:
|
nodeSelector:
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
nameOverride: ""
|
nameOverride: ""
|
||||||
|
namespaceOverride: ""
|
||||||
|
|
||||||
ollama:
|
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
|
# -- 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
|
||||||
@@ -31,25 +32,128 @@ 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.
|
# -- 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: []
|
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
|
# -- Value of cluster domain
|
||||||
clusterDomain: cluster.local
|
clusterDomain: cluster.local
|
||||||
|
|
||||||
annotations: {}
|
annotations: {}
|
||||||
podAnnotations: {}
|
podAnnotations: {}
|
||||||
|
podLabels: {}
|
||||||
replicaCount: 1
|
replicaCount: 1
|
||||||
# -- Open WebUI image tags can be found here: https://github.com/open-webui/open-webui/pkgs/container/open-webui
|
# -- 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:
|
image:
|
||||||
repository: ghcr.io/open-webui/open-webui
|
repository: ghcr.io/open-webui/open-webui
|
||||||
tag: ""
|
tag: ""
|
||||||
pullPolicy: "IfNotPresent"
|
pullPolicy: "IfNotPresent"
|
||||||
|
|
||||||
|
serviceAccount:
|
||||||
|
enable: true
|
||||||
|
name: ""
|
||||||
|
annotations: {}
|
||||||
|
automountServiceAccountToken: false
|
||||||
|
|
||||||
# -- Configure imagePullSecrets to use private registry
|
# -- Configure imagePullSecrets to use private registry
|
||||||
# ref: <https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry>
|
# ref: <https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry>
|
||||||
imagePullSecrets: []
|
imagePullSecrets: []
|
||||||
# imagePullSecrets:
|
# imagePullSecrets:
|
||||||
# - name: myRegistryKeySecretName
|
# - 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: {}
|
resources: {}
|
||||||
|
|
||||||
|
copyAppData:
|
||||||
|
resources: {}
|
||||||
|
|
||||||
ingress:
|
ingress:
|
||||||
enabled: false
|
enabled: false
|
||||||
class: ""
|
class: ""
|
||||||
@@ -57,6 +161,7 @@ ingress:
|
|||||||
# nginx.ingress.kubernetes.io/rewrite-target: /
|
# nginx.ingress.kubernetes.io/rewrite-target: /
|
||||||
annotations: {}
|
annotations: {}
|
||||||
host: ""
|
host: ""
|
||||||
|
additionalHosts: []
|
||||||
tls: false
|
tls: false
|
||||||
existingSecret: ""
|
existingSecret: ""
|
||||||
persistence:
|
persistence:
|
||||||
@@ -143,6 +248,7 @@ podSecurityContext:
|
|||||||
# supplementalGroups: []
|
# supplementalGroups: []
|
||||||
# fsGroup: 1001
|
# fsGroup: 1001
|
||||||
|
|
||||||
|
|
||||||
# -- Configure container security context
|
# -- Configure container 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-containe>
|
||||||
containerSecurityContext:
|
containerSecurityContext:
|
||||||
@@ -158,3 +264,13 @@ containerSecurityContext:
|
|||||||
# - ALL
|
# - ALL
|
||||||
# seccompProfile:
|
# seccompProfile:
|
||||||
# type: "RuntimeDefault"
|
# type: "RuntimeDefault"
|
||||||
|
|
||||||
|
# -- Extra resources to deploy with Open WebUI
|
||||||
|
extraResources:
|
||||||
|
[]
|
||||||
|
# - apiVersion: v1
|
||||||
|
# kind: ConfigMap
|
||||||
|
# metadata:
|
||||||
|
# name: example-configmap
|
||||||
|
# data:
|
||||||
|
# example-key: example-value
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
apiVersion: v2
|
apiVersion: v2
|
||||||
name: pipelines
|
name: pipelines
|
||||||
version: 0.0.4
|
version: 0.1.0
|
||||||
appVersion: "alpha"
|
appVersion: "alpha"
|
||||||
|
|
||||||
home: https://github.com/open-webui/pipelines
|
home: https://github.com/open-webui/pipelines
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
# pipelines
|
# pipelines
|
||||||
|
|
||||||
 
|
 
|
||||||
|
|
||||||
Pipelines: UI-Agnostic OpenAI API Plugin Framework
|
Pipelines: UI-Agnostic OpenAI API Plugin Framework
|
||||||
|
|
||||||
@@ -35,6 +35,7 @@ helm upgrade --install open-webui open-webui/pipelines
|
|||||||
| clusterDomain | string | `"cluster.local"` | Value of cluster domain |
|
| 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 | 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 |
|
| 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 |
|
||||||
|
| extraResources | list | `[]` | Extra resources to deploy with Open WebUI Pipelines |
|
||||||
| image.pullPolicy | string | `"Always"` | |
|
| image.pullPolicy | string | `"Always"` | |
|
||||||
| image.repository | string | `"ghcr.io/open-webui/pipelines"` | |
|
| image.repository | string | `"ghcr.io/open-webui/pipelines"` | |
|
||||||
| image.tag | string | `"main"` | |
|
| image.tag | string | `"main"` | |
|
||||||
@@ -46,6 +47,7 @@ helm upgrade --install open-webui open-webui/pipelines
|
|||||||
| ingress.host | string | `""` | |
|
| ingress.host | string | `""` | |
|
||||||
| ingress.tls | bool | `false` | |
|
| ingress.tls | bool | `false` | |
|
||||||
| nameOverride | string | `""` | |
|
| nameOverride | string | `""` | |
|
||||||
|
| namespaceOverride | string | `""` | |
|
||||||
| nodeSelector | object | `{}` | Node labels for pod assignment. |
|
| nodeSelector | object | `{}` | Node labels for pod assignment. |
|
||||||
| persistence.accessModes | list | `["ReadWriteOnce"]` | If using multiple replicas, you must update accessModes to ReadWriteMany |
|
| persistence.accessModes | list | `["ReadWriteOnce"]` | If using multiple replicas, you must update accessModes to ReadWriteMany |
|
||||||
| persistence.annotations | object | `{}` | |
|
| persistence.annotations | object | `{}` | |
|
||||||
@@ -55,6 +57,7 @@ helm upgrade --install open-webui open-webui/pipelines
|
|||||||
| persistence.size | string | `"2Gi"` | |
|
| persistence.size | string | `"2Gi"` | |
|
||||||
| persistence.storageClass | string | `""` | |
|
| persistence.storageClass | string | `""` | |
|
||||||
| podAnnotations | object | `{}` | |
|
| podAnnotations | object | `{}` | |
|
||||||
|
| podLabels | object | `{}` | |
|
||||||
| replicaCount | int | `1` | |
|
| replicaCount | int | `1` | |
|
||||||
| resources | object | `{}` | |
|
| resources | object | `{}` | |
|
||||||
| service.annotations | object | `{}` | |
|
| service.annotations | object | `{}` | |
|
||||||
@@ -64,6 +67,8 @@ helm upgrade --install open-webui open-webui/pipelines
|
|||||||
| service.nodePort | string | `""` | |
|
| service.nodePort | string | `""` | |
|
||||||
| service.port | int | `9099` | |
|
| service.port | int | `9099` | |
|
||||||
| service.type | string | `"ClusterIP"` | |
|
| service.type | string | `"ClusterIP"` | |
|
||||||
|
| serviceAccount.automountServiceAccountToken | bool | `false` | |
|
||||||
|
| serviceAccount.enable | bool | `true` | |
|
||||||
| tolerations | list | `[]` | Tolerations for pod assignment |
|
| tolerations | list | `[]` | Tolerations for pod assignment |
|
||||||
|
|
||||||
----------------------------------------------
|
----------------------------------------------
|
||||||
|
|||||||
@@ -1,3 +1,14 @@
|
|||||||
|
{{/*
|
||||||
|
Allow the release namespace to be overridden for multi-namespace deployments in combined charts
|
||||||
|
*/}}
|
||||||
|
{{- define "pipelines.namespace" -}}
|
||||||
|
{{- if .Values.namespaceOverride -}}
|
||||||
|
{{- .Values.namespaceOverride -}}
|
||||||
|
{{- else -}}
|
||||||
|
{{- .Release.Namespace -}}
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
{{/*
|
{{/*
|
||||||
Set the name of the Pipelines resources
|
Set the name of the Pipelines resources
|
||||||
*/}}
|
*/}}
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ apiVersion: apps/v1
|
|||||||
kind: Deployment
|
kind: Deployment
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ include "pipelines.name" . }}
|
name: {{ include "pipelines.name" . }}
|
||||||
|
namespace: {{ include "pipelines.namespace" . }}
|
||||||
labels:
|
labels:
|
||||||
{{- include "pipelines.labels" . | nindent 4 }}
|
{{- include "pipelines.labels" . | nindent 4 }}
|
||||||
{{- with .Values.annotations }}
|
{{- with .Values.annotations }}
|
||||||
@@ -17,6 +18,9 @@ spec:
|
|||||||
metadata:
|
metadata:
|
||||||
labels:
|
labels:
|
||||||
{{- include "pipelines.labels" . | nindent 8 }}
|
{{- include "pipelines.labels" . | nindent 8 }}
|
||||||
|
{{- with .Values.podLabels }}
|
||||||
|
{{- toYaml . | nindent 8 }}
|
||||||
|
{{- end }}
|
||||||
{{- with .Values.podAnnotations }}
|
{{- with .Values.podAnnotations }}
|
||||||
annotations:
|
annotations:
|
||||||
{{- toYaml . | nindent 8 }}
|
{{- toYaml . | nindent 8 }}
|
||||||
@@ -27,7 +31,10 @@ spec:
|
|||||||
{{- toYaml . | nindent 8 }}
|
{{- toYaml . | nindent 8 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
enableServiceLinks: false
|
enableServiceLinks: false
|
||||||
automountServiceAccountToken: false
|
automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken | default false }}
|
||||||
|
{{- if .Values.serviceAccount.enable }}
|
||||||
|
serviceAccountName: {{ .Values.serviceAccount.name | default (include "pipelines.name" .) }}
|
||||||
|
{{- end }}
|
||||||
containers:
|
containers:
|
||||||
- name: {{ .Chart.Name }}
|
- name: {{ .Chart.Name }}
|
||||||
{{- with .Values.image }}
|
{{- with .Values.image }}
|
||||||
@@ -42,7 +49,7 @@ spec:
|
|||||||
{{- end }}
|
{{- end }}
|
||||||
volumeMounts:
|
volumeMounts:
|
||||||
- name: data
|
- name: data
|
||||||
mountPath: /app/backend/data
|
mountPath: /app/pipelines
|
||||||
env:
|
env:
|
||||||
{{- if .Values.extraEnvVars }}
|
{{- if .Values.extraEnvVars }}
|
||||||
{{- toYaml .Values.extraEnvVars | nindent 8 }}
|
{{- toYaml .Values.extraEnvVars | nindent 8 }}
|
||||||
|
|||||||
6
charts/pipelines/templates/extra-resources.yaml
Normal file
6
charts/pipelines/templates/extra-resources.yaml
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
{{- if .Values.extraResources }}
|
||||||
|
{{- range .Values.extraResources }}
|
||||||
|
---
|
||||||
|
{{ toYaml . | nindent 0 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
@@ -3,6 +3,7 @@ apiVersion: v1
|
|||||||
kind: PersistentVolumeClaim
|
kind: PersistentVolumeClaim
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ include "pipelines.name" . }}
|
name: {{ include "pipelines.name" . }}
|
||||||
|
namespace: {{ include "pipelines.namespace" . }}
|
||||||
labels:
|
labels:
|
||||||
{{- include "pipelines.selectorLabels" . | nindent 4 }}
|
{{- include "pipelines.selectorLabels" . | nindent 4 }}
|
||||||
{{- with .Values.persistence.annotations }}
|
{{- with .Values.persistence.annotations }}
|
||||||
|
|||||||
13
charts/pipelines/templates/service-account.yaml
Normal file
13
charts/pipelines/templates/service-account.yaml
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
{{- if .Values.serviceAccount.enable }}
|
||||||
|
apiVersion: v1
|
||||||
|
kind: ServiceAccount
|
||||||
|
metadata:
|
||||||
|
name: {{ .Values.serviceAccount.name | default (include "pipelines.name" .) }}
|
||||||
|
namespace: {{ include "pipelines.namespace" . }}
|
||||||
|
labels:
|
||||||
|
{{- include "pipelines.labels" . | nindent 4 }}
|
||||||
|
{{- with .Values.serviceAccount.annotations }}
|
||||||
|
annotations:
|
||||||
|
{{- toYaml . | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
@@ -2,6 +2,7 @@ apiVersion: v1
|
|||||||
kind: Service
|
kind: Service
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ include "pipelines.name" . }}
|
name: {{ include "pipelines.name" . }}
|
||||||
|
namespace: {{ include "pipelines.namespace" . }}
|
||||||
labels:
|
labels:
|
||||||
{{- include "pipelines.labels" . | nindent 4 }}
|
{{- include "pipelines.labels" . | nindent 4 }}
|
||||||
{{- with .Values.service.labels }}
|
{{- with .Values.service.labels }}
|
||||||
|
|||||||
@@ -1,10 +1,12 @@
|
|||||||
nameOverride: ""
|
nameOverride: ""
|
||||||
|
namespaceOverride: ""
|
||||||
|
|
||||||
# -- Value of cluster domain
|
# -- Value of cluster domain
|
||||||
clusterDomain: cluster.local
|
clusterDomain: cluster.local
|
||||||
|
|
||||||
annotations: {}
|
annotations: {}
|
||||||
podAnnotations: {}
|
podAnnotations: {}
|
||||||
|
podLabels: {}
|
||||||
replicaCount: 1
|
replicaCount: 1
|
||||||
image:
|
image:
|
||||||
repository: ghcr.io/open-webui/pipelines
|
repository: ghcr.io/open-webui/pipelines
|
||||||
@@ -38,6 +40,10 @@ persistence:
|
|||||||
selector: {}
|
selector: {}
|
||||||
annotations: {}
|
annotations: {}
|
||||||
|
|
||||||
|
serviceAccount:
|
||||||
|
enable: true
|
||||||
|
automountServiceAccountToken: false
|
||||||
|
|
||||||
# -- Node labels for pod assignment.
|
# -- Node labels for pod assignment.
|
||||||
nodeSelector: {}
|
nodeSelector: {}
|
||||||
|
|
||||||
@@ -81,3 +87,13 @@ extraEnvVars:
|
|||||||
# key: secret-key
|
# key: secret-key
|
||||||
# - name: LANGFUSE_HOST
|
# - name: LANGFUSE_HOST
|
||||||
# value: https://us.cloud.langfuse.com
|
# value: https://us.cloud.langfuse.com
|
||||||
|
|
||||||
|
# -- Extra resources to deploy with Open WebUI Pipelines
|
||||||
|
extraResources:
|
||||||
|
[]
|
||||||
|
# - apiVersion: v1
|
||||||
|
# kind: ConfigMap
|
||||||
|
# metadata:
|
||||||
|
# name: example-configmap
|
||||||
|
# data:
|
||||||
|
# example-key: example-value
|
||||||
|
|||||||
Reference in New Issue
Block a user