dash https
Does anyone know how to get dashdot to run in https?
I have tried adding a second port for https, however that didn't work at all
43 Replies
Logically, the same way you made homarr go under https. 3rd party network manager like nginx or traefik
Also remember that for it to work you need valid ssl certificates
I used a domain name for the homarr dashboard. You can't use a domain for dash
What platform are you deploying it from? Homarr does not support https out of the box, only behind a reverse proxy
In my case, homarr is behind traefik and dash is just on the docker network. Homarr gets the https from traefik, but I don't have a way to force dash to use one. Really don't want to have to make a special config for dash to bypass google oauth.
why not use cloudflare ?
I am using cloudflare. They are my dns provider and cert resolver.
You can also put dash behind traefik. You need to have independent access to dash if you want it to appear in iframes too. Iframes are just a sort of browser page into another page
The problem with putting dash on traefik for another service to access is that my traefik is configured to require authorization through google oauth. I would have to remove that oauth requirement for dash in order for it to work thus opening my system to the internet without an auth step. With every service I run that accesses a different service is done so on the backend through the docker network.
That's how Iframes work, normally if you're auth'd on homarr, that same auth passes through to the iframes. Have you tried?
Oh. So the iframe will use the cookie/auth from the parent page? I’ll have to check on that later but learn something new everyday 😛
well.. I tried, I even tried with a no-auth config and homarr can't connect to dash.
forget everything I said... My dumbass forgot to add the network to attach to in my compose for dash. Thanks for trying to help me.
Did you get everything working?
Not quite. I no longer get the errors but the widget doesn’t seem to receive the data that dash is providing. Basically, the widget is blank except when I hover over the individual info frames. For instance, it will be completely blank until the mouse enters the CPU frame which triggers just the text “CPU” to appear but nothing else.
I haven’t started research it yet, but my initial guess is that traefik needs add or strip a prefix on the url to properly access the dash api.
Maybe yes, good luck. Try looking at other #get-help threads that talk about similar things
Because most probably dont want it accessible externally. For me i only have it locally because i dont want it externally
I just decided to just ignore it, as I couldn't get dash running on a https port. I run all my services through npm so i can have a local intranet
Sorry i didnt reply way back then had a friend pass and then flu season hit at work, but i use npm. And self signed certs that i install manually on my devices
Oh, if you're using self signed certificates that are not validated by a CA, then it's not gonna work at all anyway.
We're thinking of changing the way we handle dashdot in the future to get rid of those problems though
When you have the cert installed it works just as a CA
Then just do the same as you did for homarr to put dashdot in https too
Dash cant be a domain name
Has to be an IP address
@BlueFoot Did you ever manage to fix this?
The Homarr documentation says to set
X-Frame-Options
headers and CSP frame-ancestors
but they have no impact.
I've been querying the api directly (decoded):
https://example.com/api/trpc/dashDot.info?batch=1&input={"0":{"json":{"url":"https://{docker_ip}:3001"}}}
However this will always return 500 because Dash. doesnt run on HTTPS internally. It works fine if queried via HTTP which isnt allowed when Homarr uses TLS I havn't
So I need to use traefik to make it https. However earlier its said that: https://discord.com/channels/972958686051962910/1051254350409891952/1051320437633724426
So I set traefik host to an IP address so NextJS can reach it, but then I can't verify ACME.
This feels like a Catch 22 ive spent a couple hours on
This feels like a Catch 22 ive spent a couple hours on
The problem is you can make dash https easily with NPM
but the dashboard doesn't accept domain names
i can make dash https no problem. I use traefik labels in a docker-compose
You can only use numerical IPs with the widget
just noticed its strange how querying dashdot's external example via domainname in the widget works fine...
dash.
Web site created using create-react-app
odd
Part of my issue is that when I try to add additional ports for dash it decides that it can't handle it so it commits sepukku and deletes all the ports
heres a good side by side
Hold up!
How does the Dash. widget (which is supposed to render an iframe) not work but the iframe widget works just fine with same url?!
Yeah that was my original issue before I nuked it
@Tag Whenever ya around to this...cuz this seems like a Homarr API isssue exclusively.
Just in case
Managed to get back to where I was at the beginning of this fun
So I believe the key issue is that when you use the Dash. Widget integration is the following:
When you set it up, Homarr tries to do a backend api call to dash before anything. I use forward authentication and trying that would always result in an error 500 being thrown and nothing being rendered in the dash. Widget.
When I however manually set the iFrames then it works fine. You can consult the documentation of dash. To get the matching graphs etc. Only issue is Homarr has custom network and disk space components which you can’t access unless you use the dash. Widget which doesn’t work as described above for me
Further bugfixes and time waste for Dash in it's current state won't be done. We've had too many problems with people unable to make it work and needing too much time helping them. We plan on completely changing the approach, most likely using it's rest api instead. Until then, consider it "dead"
You can try and make it work for yourself as is, and we won't remove it as many people have already made it work
I just have one iFrame for each widget, works pretty welll, only issue is there are not headers or indicators, just graph, but other thatn that, it's alright, the docs also have a widget creator which you can use to generate the iFrame src https://getdashdot.com/docs/integration/widgets#widget-creator
Widgets | dash.
Show dash. graphs on your page
I'd say normal people can make it work no problems as I used to, the problem is when you start making things https
https makes things angy