Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Redis to helm chart #135

Closed
tkg61 opened this issue Jan 6, 2025 · 4 comments · Fixed by #137
Closed

Add Redis to helm chart #135

tkg61 opened this issue Jan 6, 2025 · 4 comments · Fixed by #137
Labels
enhancement New feature or request good first issue Good for newcomers

Comments

@tkg61
Copy link

tkg61 commented Jan 6, 2025

With the support of redis and websockets, having this available in the helm chat would be great!

@0xThresh 0xThresh added enhancement New feature or request good first issue Good for newcomers labels Jan 7, 2025
@jyje
Copy link
Contributor

jyje commented Jan 7, 2025

I think three options would work well:

  • add the redis subchart and link it
  • link to the host of external redis
  • do both

which option seems best?

@tkg61
Copy link
Author

tkg61 commented Jan 7, 2025

I would say both would be fantastic. Larger installs will want to possibly use one they already have or want to keep separate and smaller or dedicated installs will want an easy button :)

@jyje
Copy link
Contributor

jyje commented Jan 7, 2025

I missed smaller one. How about 3 scenario? based on this doc, I'm writing the first draft for pilot.

Install Scenario Description redis.enabled redisCluster.enabled
Small Default installation: 1 Redis server using k8s Deployment true false
Full High availability: Redis cluster using Bitnami Helm chart false true
External Use an external Redis instance instead of deploying one in the chart false false

these are proposed parts of values.yaml

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
  url: redis://websocket-redis:6379/0
  # -- Deploys a redis
  redis:
    # -- Enable redis installation
    enabled: true
    # -- Redis name
    name: websocket-redis
    # -- Redis labels
    labels: {}
    # -- Redis annotations
    annotations: {}
    # -- Redis image
    image:
      repository: redis
      tag: 7.4.2-alpine3.21
      pullPolicy: IfNotPresent
    # -- 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
      nodePort: ""
  # -- Deploys a redis cluster with subchart (bitnami chart)
  redisCluster:
    # -- Enable redis installation
    enabled: false
    # ...
    # ...
    # ...

I'm testing small scenario now. If you can say this draft looks good, we can start based on it. Please give me any advice.

@jyje
Copy link
Contributor

jyje commented Jan 7, 2025

To @tkg61 or someone. Hello folks.

I tested Small, External scenario in k8s redis. The websocket manager was recognized in pod from debug message below:
image

I don't know how to verify websocket functions in owui web. I'm not good at web developments for websocket. If there is in owui docs or somewhere, please let me know.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request good first issue Good for newcomers
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants