bfritscher / typesense-dashboard

A Typesense Dashboard to manage and browse collections.
https://bfritscher.github.io/typesense-dashboard/
GNU General Public License v3.0
359 stars 67 forks source link

Environment variables to set up the UI #29

Closed rgarrigue closed 1 year ago

rgarrigue commented 1 year ago

Hi

As an ops, I'ld be interested in setting this UI up via environment variables, so users are directly connected to a given typesense.

Looking at the Dockerfile I see it's just static files served by Caddy, no interactive NodeJS to load the said env vars. I've been there before, and the developer made it so the app would load settings from a config.json file, which would be generated by a shell script in the entrypoint.

bfritscher commented 1 year ago

Hi,

It might be possible to refactor the current login and history system, but currently it is based on quasar localstorage.

Some more information of the context might be helpful.

You want the web version to directly be logged in to a fixed system? Does logout have to be disabled? Do you have multiple login which have to be preconfigured in the login history drop down? Authentication of the web version is handle via an external proxy?

The config filed could be mapped as a volume? What is the use case of the entrypoint generation?

Regards

rgarrigue commented 1 year ago

Yes, logged in on a fixed system. And that's it from the dashboard POV. I'd add authentication through external means, like a sidecar oauth2-proxy.

The config file can be mapped as a volume indeed. Another solution would be a bash script that write down the config file from the ENVs vars. It's a bit tedious but it works, did that with a React based portal in a previous job

bfritscher commented 1 year ago

In version 1.4 I added config.json mapping to do auto-login check the readme :-)

rgarrigue commented 1 year ago

Awesome thanks !