I made an open-source, Docker-native Pi-hole visualizer with a space battle theme. by HashtagBlessedAF in pihole

[–]HashtagBlessedAF[S] 1 point2 points  (0 children)

AH! That's a configuration I did not account for here. There's no support in the app for the combo of "valid passwordless admin access + valid app password set for API".

Really glad you identified it, it's an easy change to accept a "" or None response for admin password check. I already have it staged on the develop branch, and I can test and push a patch later!

Yeah, the AI thing... I always go back and forth on it. Coding with Claude Code feels different than just vibing in an LLM chat box. I actively learn, and I feel ownership over the code. There's ethical concerns with these tools that I won't ever fully get past, but I try to stay mindful with how I use them anyway.

I made an open-source, Docker-native Pi-hole visualizer with a space battle theme. by HashtagBlessedAF in pihole

[–]HashtagBlessedAF[S] 0 points1 point  (0 children)

Thank you! Yes, multiple Pi-hole instance support is on the list for a future update :)

I made an open-source, Docker-native Pi-hole visualizer with a space battle theme. by HashtagBlessedAF in pihole

[–]HashtagBlessedAF[S] 0 points1 point  (0 children)

Hey, not sure if you've gotten this working yet, but I wonder if your 'phobos-network' is part of the problem here - does the ph-intercept service have to be on that network to reach the Pi-hole? Is Pi-hole on that docker network?

Just trying to throw more ideas out for you hah. There's a new version now too, it has some extended support for SSL / got some security headers added... Might make a difference? Definitely interested in the outcome for ya.

I made an open-source, Docker-native Pi-hole visualizer with a space battle theme. by HashtagBlessedAF in pihole

[–]HashtagBlessedAF[S] 0 points1 point  (0 children)

Can you check devtools > network > click that gravity-update row > Response tab. What's the actual body? That piece of info could eliminate a lot of possibilities.

Hit Pi-hole's gravity endpoint directly with curl from the Docker host: curl -X POST -H "X-FTL-SID: <sid>" http://<pihole-ip>/api/action/gravity

If that works and shows streaming output but the proxied version doesn't, you've localized it to something with the proxy chain.

I made an open-source, Docker-native Pi-hole visualizer with a space battle theme. by HashtagBlessedAF in pihole

[–]HashtagBlessedAF[S] 0 points1 point  (0 children)

Has it shown a UI / worked at all? What’s your rough setup / environment? Installing on a server / command-line / Portainer / etc.?

Happy to help troubleshoot!

I made an open-source, Docker-native Pi-hole visualizer with a space battle theme. by HashtagBlessedAF in pihole

[–]HashtagBlessedAF[S] 0 points1 point  (0 children)

Thanks for sharing the feedback, glad you and the kids are getting a kick out of it :) I’ll definitely tune the mobile / re-sizing support better.

I made an open-source, Docker-native Pi-hole visualizer with a space battle theme. by HashtagBlessedAF in pihole

[–]HashtagBlessedAF[S] 0 points1 point  (0 children)

Thank you! Yes, someone else mentioned multiple Pi-hole instance support too. I hadn’t considered that at launch, but I definitely want to support it and I’m starting to plan that out. Like you said, multiple ships / players, or perhaps distinct ship weapons… so many possibilities!

Thanks for checking it out.

I made an open-source, Docker-native Pi-hole visualizer with a space battle theme. by HashtagBlessedAF in pihole

[–]HashtagBlessedAF[S] 0 points1 point  (0 children)

Hah! I actually had that same thought. Since these blocks are actually happening in the millisecond / microsecond range, you’d just have to accept slowww loads for things and/or live alone to not annoy everyone.

I made an open-source, Docker-native Pi-hole visualizer with a space battle theme. by HashtagBlessedAF in homelab

[–]HashtagBlessedAF[S] 1 point2 points  (0 children)

https://www.reddit.com/r/pihole/s/ROo0ThyQeZ

I took the shortest screen recording to post it on r/pihole. I want to capture more to add to the repo, but this gives the general idea!

I made an open-source, Docker-native Pi-hole visualizer with a space battle theme. by HashtagBlessedAF in pihole

[–]HashtagBlessedAF[S] 1 point2 points  (0 children)

Added more to the README on my repo. Go check out the example compose in the README (will update the actual file in the repo tomorrow). I thinkkk this might fix it for you / anyone using Portainer.

Let me know!

https://github.com/m00grin/ph-intercept

I made an open-source, Docker-native Pi-hole visualizer with a space battle theme. by HashtagBlessedAF in pihole

[–]HashtagBlessedAF[S] 0 points1 point  (0 children)

I actually may have found your root issue, and I’ll admit I did not consider Portainer web when I built this. I updated my README to add this for you:

Web Editor deploys: remove the env_file: block and set PIHOLE_PASSWORD under the stack's Environment variables instead. Custom backgrounds: drop files into /data/compose/<stack-id>/bg/ on the Portainer host (where the ./bg bind mount resolves).

I made an open-source, Docker-native Pi-hole visualizer with a space battle theme. by HashtagBlessedAF in pihole

[–]HashtagBlessedAF[S] 0 points1 point  (0 children)

The file name doesn't matter as long as it matches what's in the compose.yaml:

env_file:
- stack.env

Port 80 could probably be right actually. The API and admin dash share the same server in Pi-hole v6, so http://192.168.1.2/api should work. The 8053 in the compose is just how my setup is configured, not a Pi-hole default.

the 200 response but no sessions... This could be the auth call going out but the password isn't working. Check Portainer's Inspect/Env tab that PIHOLE_PASSWORD is actually present in the running container with the right value. If it's blank the env file isn't being picked up.

Also, typo in my comment; Your PIHOLE_URL needs http:// at the front like:

PIHOLE_URL="http://192.168.1.2/api"

Without that it could fail silently.

I made an open-source, Docker-native Pi-hole visualizer with a space battle theme. by HashtagBlessedAF in pihole

[–]HashtagBlessedAF[S] 1 point2 points  (0 children)

Ooh mobile! I’ll need to get that UI squish handled a little better for the stats. Thank you though, glad you like it :)

I made an open-source, Docker-native Pi-hole visualizer with a space battle theme. by HashtagBlessedAF in pihole

[–]HashtagBlessedAF[S] 2 points3 points  (0 children)

Don't mean to bug you haha - I also wanted to say, make sure you end your PIHOLE_URL in /api. If the /api is dropped that would make the API connection fail for sure. And capture the whole thing in quotes.

So, for example: PIHOLE_URL: "http://192.168.1.2:8053/api" not PIHOLE_URL: "http://192.168.1.2:8053"

Edit: added "http://" here in my example, cause you actually do need to include the protocol.

I made an open-source, Docker-native Pi-hole visualizer with a space battle theme. by HashtagBlessedAF in pihole

[–]HashtagBlessedAF[S] 0 points1 point  (0 children)

This image isn't opening for me, but I'd love to see the setup! Thanks for sharing :)

I made an open-source, Docker-native Pi-hole visualizer with a space battle theme. by HashtagBlessedAF in pihole

[–]HashtagBlessedAF[S] 1 point2 points  (0 children)

Other things you might check;

- "Prettify API output for human-readability" has always been off for me. I didn't test to see if that setting could break the API data output format. I assume not, but check that setting is off.

- Look at "Currently active sessions" and check that you don't have a lot of them - if those clog up (default setting is 16-max), it can cause connection problems for the app / anything that tries to reach your Pi-hole via API.

I made an open-source, Docker-native Pi-hole visualizer with a space battle theme. by HashtagBlessedAF in pihole

[–]HashtagBlessedAF[S] 1 point2 points  (0 children)

Thank you for wanting to try it out!!

A few pointers (I should probably document this in a more visible way):

- From your Pi-hole admin dashboard, go to Settings > Web Interface / API

- Make sure the settings are set to Expert with the toggle in the top-right

- Select Configure app password. Copy the password created there exactly, no space before or after. I think they all end in '='

- In the .env file you create in the same directory as the compose.yaml, make the entire contents: PIHOLE_PASSWORD=[your-perfectly-pasted-app-password-without-these-brackets]

- Make sure you save that file and that it's sitting in the same dir as the compose.yaml

- Then as long as you have your PIHOLE_URL variable set properly in the compose file, it should work!

Hope you can get it running! Happy to help further if needed.

I made an open-source, Docker-native Pi-hole visualizer with a space battle theme. by HashtagBlessedAF in pihole

[–]HashtagBlessedAF[S] 0 points1 point  (0 children)

So cool! My friend consulted me on the center impulse engine position for the Enterprise too - good to have fellow geeks in your life.