H
Homarr9mo ago
Matt

AdGuard home integration

Hi! I have been trying for a few days to make my AdGuard Home integration work. I’ve tested if Homarr and AdGuard can see each other, put the credentials and selected the integration when I added the app. I’ve searched the Discord, documentation and Reddit in general but I cannot seem to find a real answer, if anyone could help I’d be very greatful! Homarr and AdGuard are on two different hosts, no other details come to mind as now, if I need to give additional info please let me know what I should add! OS: Ubuntu Server 22.04 LTS Host: Docker Compose Config: the default from the documentation Logs: https://pastebin.com/XuxGEjMC No errors or warnings in the logs
Pastebin
Logs for Homarr - Pastebin.com
Pastebin.com is the number one paste tool since 2002. Pastebin is a website where you can store text online for a set period of time.
Solution:
Forbidden -> Either your reverse proxy is blocking the requests or the credentials are incorrect
Jump to solution
81 Replies
Cakey Bot
Cakey Bot9mo ago
Thank you for submitting a support request. Depending on the volume of requests, our team should get in contact with you shortly.
⚠️ Please include the following details in your post or we may reject your request without further comment: - Log (See https://homarr.dev/docs/community/faq#how-do-i-open-the-console--log) - Operating system (Unraid, TrueNAS, Ubuntu, ...) - Exact Homarr version (eg. 0.15.0, not latest) - Configuration (eg. docker-compose, screenshot or similar. Use ``your-text`` to format) - Other relevant information (eg. your devices, your browser, ...)
❓ Frequently Asked Questions | Homarr documentation
Can I install Homarr on a Raspberry Pi?
Manicraft1001
Manicraft10019mo ago
Hi @Matt , what does the dashboard look like? I see no problems when looking at the log. Did you capture the log after a few minutes?
Matt
MattOP9mo ago
Yes, those logs are around 20 minutes old, I have tried to search for a deeper log mode but I cound't find any log-level option in the configs
Matt
MattOP9mo ago
No description
Matt
MattOP9mo ago
This is how the homepage looks like, I've already made sure that all the login parameters in the integration are correct I'll share the docker-compose.yml content, even tho I just copied and pasted it from the docs, maybe I got something wrong in the process
version: '3'
#---------------------------------------------------------------------#
# Homarr - A simple, yet powerful dashboard for your server. #
#---------------------------------------------------------------------#
services:
homarr:
container_name: homarr
image: ghcr.io/ajnart/homarr:latest
restart: unless-stopped
volumes:
- /var/run/docker.sock:/var/run/docker.sock # Optional, only if you want docker integration
- ./homarr/configs:/app/data/configs
- ./homarr/icons:/app/public/icons
- ./homarr/data:/data
ports:
- '7575:7575'
version: '3'
#---------------------------------------------------------------------#
# Homarr - A simple, yet powerful dashboard for your server. #
#---------------------------------------------------------------------#
services:
homarr:
container_name: homarr
image: ghcr.io/ajnart/homarr:latest
restart: unless-stopped
volumes:
- /var/run/docker.sock:/var/run/docker.sock # Optional, only if you want docker integration
- ./homarr/configs:/app/data/configs
- ./homarr/icons:/app/public/icons
- ./homarr/data:/data
ports:
- '7575:7575'
Manicraft1001
Manicraft10019mo ago
Can you try a different browser and clear your cache
Matt
MattOP9mo ago
Sure thing
Matt
MattOP9mo ago
Using MS Edge gives the same problem
No description
Serenaphic
Serenaphic9mo ago
Sometimes logs are only present in the browser console, anything there?
Matt
MattOP9mo ago
I'll check it out
Matt
MattOP9mo ago
No description
Serenaphic
Serenaphic9mo ago
If there's no error it means there a problem with how you configured the integration Or rather, that you might not have done it
Matt
MattOP9mo ago
I only configured this part of the app, directly on the widget it just gives me the "Use colors from PiHole" switch and the choise between orientations
No description
Serenaphic
Serenaphic9mo ago
I might know... Basically, we validate the data we get from adguard, and if those values are somehow out of scope, it invalidates all the data without giving an error...
Matt
MattOP9mo ago
So the data that's coming from AdGuard are somehow out of scope?
Manicraft1001
Manicraft10019mo ago
Didn't we implement a log for this a few months ago? I would check this assumption
Serenaphic
Serenaphic9mo ago
Yeah, but I'm not sure adguard is the problem. We had a similar issue in the past. I'll check it
Matt
MattOP9mo ago
If there is anything that I can do to help from my end just let me know
Serenaphic
Serenaphic9mo ago
:')
No description
Manicraft1001
Manicraft10019mo ago
Who thought that this was a good idea.... Can you commit a fix @Tag ?
Serenaphic
Serenaphic9mo ago
It actually is a good idea, because otherwise it would just crash the page because the errors weren't handled. I just forgot to log the error
Manicraft1001
Manicraft10019mo ago
Yea that's what I meant. Swallowing errors is worse than throwing a stacktrace 😂
Serenaphic
Serenaphic9mo ago
Anyway I'll make a fix that logs the error and remove the validation
Serenaphic
Serenaphic9mo ago
It could help to know exactly what value is being held back, it might be a bit hard if you don't know how to do it but would you be able to run this get request on your adguard and share the response?
No description
Serenaphic
Serenaphic9mo ago
No description
Serenaphic
Serenaphic9mo ago
The easiest way would be to use postman instead of going the hard route with curl
Matt
MattOP9mo ago
I’ll try, give me a few mins, was having dinner
Serenaphic
Serenaphic9mo ago
No problem
Matt
MattOP9mo ago
Is it a problem if I cut out the top queried domains and the top clients? Just from a "sensitive data" standpoint
Matt
MattOP9mo ago
Serenaphic
Serenaphic9mo ago
Of course cut that part out
Matt
MattOP9mo ago
I've left out the whole top queried, top blocked and top clients and just put a random value just not to leave it empty It took a while just cause I've never used Javascript and had to improvise a bit xd
Serenaphic
Serenaphic9mo ago
Oh you went and actually copied the function? X) That's why I suggested postman
Matt
MattOP9mo ago
Oh no no, I had a bit of difficulty actually translating the code to the request, I'm a bit rusty on HTTP requests and stuff so I had to experiment a bit ahah
Serenaphic
Serenaphic9mo ago
Anyway, I'm a bit stumped because those values all meet the validation. You just have 2 values not in the schema, maybe that's the problem
Matt
MattOP9mo ago
Which ones?
Serenaphic
Serenaphic9mo ago
"top_upstreams_responses" and "top_upstreams_avg_time" I'll add them and remove most validations on the schema, see if that's enough
Matt
MattOP9mo ago
Alrighty
Serenaphic
Serenaphic9mo ago
Alright, could you try the image "tagaishi/homarr:latest"?
Matt
MattOP9mo ago
I’ll updated real quick! Give me a few minutes
Error response from daemon: pull access denied for tagaishi/homarr, repository does not exist or may require 'docker login': denied: requested access to the resource is denied
Error response from daemon: pull access denied for tagaishi/homarr, repository does not exist or may require 'docker login': denied: requested access to the resource is denied
Do I have to log in with docker to access the image?
Serenaphic
Serenaphic9mo ago
One sec I might have gotten that wrong
Manicraft1001
Manicraft10019mo ago
@Tag your fork is private or the ghcr is private
Serenaphic
Serenaphic9mo ago
I think I fixed it, can you try again?
Matt
MattOP9mo ago
Sure It gives me the same error
Matt
MattOP9mo ago
No description
Matt
MattOP9mo ago
Can't even reach the webpage
Serenaphic
Serenaphic9mo ago
It's on ghcr not docker Docker pull ghcr.io/tagaishi/homarr:latest
Matt
MattOP9mo ago
Omg sorry I'm a bit tired xd
Serenaphic
Serenaphic9mo ago
No no, I should have been more precise
Matt
MattOP9mo ago
Now it's pulling Now we have errors!
Error while fetching AdGuard stats: TypeError: fetch failed
Error while fetching AdGuard status: TypeError: fetch failed
Error while fetching AdGuard domain filters: TypeError: fetch failed
Error while fetching AdGuard stats: TypeError: fetch failed
Error while fetching AdGuard status: TypeError: fetch failed
Error while fetching AdGuard domain filters: TypeError: fetch failed
Serenaphic
Serenaphic9mo ago
Ay that's new, that's nice That error tells us nothing though x)
Matt
MattOP9mo ago
Yeah I kinda noticed it xd What's the next move? :3
Serenaphic
Serenaphic9mo ago
But it tells me one thing, all requests are failing, even the one that didn't have validation, and I removed the other validations
Matt
MattOP9mo ago
Mhhh
Serenaphic
Serenaphic9mo ago
Also the error is not when parsing the data, but on the fetch.
Matt
MattOP9mo ago
You think it could be something wrong on the AdGuard end?
Serenaphic
Serenaphic9mo ago
I think it is yeah, I need to add some loging in the adguard sdk
Matt
MattOP9mo ago
Btw, it is getting kinda late for me and tomorrow I have to wake up for uni. I hope it's not a big inconvenience if I go to sleep :')
Serenaphic
Serenaphic9mo ago
No no go right ahead, I'll message to tell you that you can repull at your convenience
Matt
MattOP9mo ago
Thanks for the help so far! If you need anything just text me here and I'll read tomorrow morning Hope you have a great rest of your day/evening/night!
Serenaphic
Serenaphic9mo ago
No problem, have a good night I made another image, just pull latest again. It should give us the error code
Matt
MattOP9mo ago
Hi! I will do that asap I’ll be in uni for next few hours and I won’t be able to do anything, I’ll update you when I’ll be able to test the new image! This is weird, docker compose is saying that the image is already up to date, but I can see no errors. You wanted me to pull from main or from the image that you sent me yesterday?
Serenaphic
Serenaphic9mo ago
It's ok take your time. It should be the same image as I sent yesterday but if latest doesn't work then use "v.0.15.999" instead
Matt
MattOP9mo ago
I tried deleting the old image and just repulling it, but I keep seeing this
homarr | Error while fetching AdGuard stats: TypeError: fetch failed
homarr | Error while fetching AdGuard status: TypeError: fetch failed
homarr | Error while fetching AdGuard domain filters: TypeError: fetch failed
homarr | Error while fetching AdGuard stats: TypeError: fetch failed
homarr | Error while fetching AdGuard status: TypeError: fetch failed
homarr | Error while fetching AdGuard domain filters: TypeError: fetch failed
The image should be up to date, on the client side I still can't see no errors
Serenaphic
Serenaphic9mo ago
That is really strange, this means the fetch itself is failing before it can get an error code. Are you sure the address is set correctly?
Matt
MattOP9mo ago
Yeah, I can double check but I'm pretty sure the adress is correct since clicking on the app redirects me on the right page
Serenaphic
Serenaphic9mo ago
Homarr uses the internal address, while your browser uses the external address. It doesn't mean it works
Matt
MattOP9mo ago
I can confirm that the adress is right
Serenaphic
Serenaphic9mo ago
You also have to make sure that homarr can use that address, not just you
Matt
MattOP9mo ago
Well being a DNS server is hosted on my own network and I use a private adress to both reach the DNS server and the admin page So yeah, Homarr can reach the AdGuard server, I already tested cause I thought it was a network problem
Serenaphic
Serenaphic9mo ago
Sanity check then because it doesn't make much sense here. Try to wget/curl that address from homarr's container's command line
Matt
MattOP9mo ago
No description
Matt
MattOP9mo ago
It's a self-signed cert so I thought the error was for that
Serenaphic
Serenaphic9mo ago
That looks like it could be the issue there. It is generally recommended to use http to avoid those kinds of issues
Manicraft1001
Manicraft10019mo ago
Not true, you just need to make sure your SSL setup is good. SSL is actually recommended for security
Matt
MattOP9mo ago
So the untrusted cert is the problem?
Matt
MattOP9mo ago
Ok so that was a problem, now the data fetches and gives the following errors:
homarr | Error while fetching AdGuard stats: SyntaxError: Unexpected token 'F', "Forbidden" is not valid JSON
homarr | Error while fetching AdGuard status: SyntaxError: Unexpected token 'F', "Forbidden" is not valid JSON
homarr | Error while fetching AdGuard domain filters: SyntaxError: Unexpected token 'F', "Forbidden" is not valid JSON
homarr | Error while fetching AdGuard stats: SyntaxError: Unexpected token 'F', "Forbidden" is not valid JSON
homarr | Error while fetching AdGuard status: SyntaxError: Unexpected token 'F', "Forbidden" is not valid JSON
homarr | Error while fetching AdGuard domain filters: SyntaxError: Unexpected token 'F', "Forbidden" is not valid JSON
Solution
Manicraft1001
Manicraft10019mo ago
Forbidden -> Either your reverse proxy is blocking the requests or the credentials are incorrect
Matt
MattOP9mo ago
I just refresh the page and it works now
Serenaphic
Serenaphic9mo ago
I'll still make the PR for better loging in adguard since that was definitely missing and necessary for the debugging process
Want results from more Discord servers?
Add your server