charts icon indicating copy to clipboard operation
charts copied to clipboard

[ollama] open-webui has some settings that have to be passed via env variable

Open ErroneousBosch opened this issue 1 year ago • 1 comments

Is your feature request related to a problem?

This is to reopen the issue discussed in #19178 .

The resolution and changes presented did not solve the problem because the setting is not stored in the webui.db. It is solely controlled via an environment variable: https://github.com/open-webui/open-webui/blob/30b053116d6a40fc60dad1766e83ed41ffcb712c/backend/config.py#L344

it is one of 30+ different options controlled this way: https://docs.openwebui.com/getting-started/env-configuration

Please add a capability of passing environment variables to the webui container.

Describe the solution you'd like

Add an ability to pass Environment variables to the webui container

Describe alternatives you've considered

provide configuration options for the most relevant variables

Additional context

I commented on the original issue but have no way of re-opening it

I've read and agree with the following

  • [X] I've checked all open and closed issues and my request is not there.
  • [X] I've checked all open and closed pull requests and my request is not there.

ErroneousBosch avatar May 07 '24 12:05 ErroneousBosch

For a temporary solution under TrueNAS Scale: You can directly add the env variable to the file located at /mnt/****/ix-applications/releases/ollama/charts/x.x.xx/ix_values.yaml under the "ui" -> "env" section.

ui: enabled: true type: Deployment podSpec: containers: ui: primary: true enabled: true imageSelector: uiImage resources: excludeExtra: true probes: liveness: enabled: true type: http path: / port: "{{ .Values.service.main.ports.main.port }}" readiness: enabled: true type: http path: / port: "{{ .Values.service.main.ports.main.port }}" startup: enabled: true type: tcp port: "{{ .Values.service.main.ports.main.port }}" env: PORT: "{{ .Values.service.main.ports.main.port }}" OLLAMA_BASE_URL: '{{ printf "http://%v-api:%v" (include "tc.v1.common.lib.chart.names.fullname" $) .Values.service.api.ports.api.targetPort }}' WEBUI_SECRET_KEY: secretKeyRef: name: ollama-secrets key: WEBUI_SECRET_KEY AUTOMATIC1111_BASE_URL: "{{ .Values.ollama.stable_diffusion.base_url }}" ENABLE_SIGNUP: "{{ .Values.ollama.registration.enabled }}" DEFAULT_USER_ROLE: "{{ .Values.ollama.registration.def_user_role }}" WHISPER_MODEL: "{{ .Values.ollama.whisper.model }}" RAG_EMBEDDING_MODEL: "{{ .Values.ollama.rag.model }}" RAG_EMBEDDING_MODEL_DEVICE_TYPE: "{{ .Values.ollama.rag.model_device_type }}" WEBUI_AUTH_TRUSTED_EMAIL_HEADER: "{{ .Values.ollama.registration.trusted_email_header }}"

wetong avatar May 14 '24 13:05 wetong

Due to SCALE Apps deprecation closing this, as we're not going to improve the SCALE Apps GUI further.

PrivatePuffin avatar May 30 '24 14:05 PrivatePuffin

@Ornias1993 can you please elaborate a bit on why this was closed? Passing variables into right containers is a critically important feature

iamarkadyt avatar Jul 28 '24 22:07 iamarkadyt

@ErroneousBosch what solution did you end up going with?

iamarkadyt avatar Jul 28 '24 22:07 iamarkadyt

As already stated, this issue was only only present on scale, where not every field was exposed. Helm is working for that scenario just fine.

stavros-k avatar Jul 28 '24 23:07 stavros-k