

Please tell me more about this. I don’t know enough to know what to dislike him about.
I only saw him recently talking about his Omarchy thing. Seemed too opinionated.
Please tell me more about this. I don’t know enough to know what to dislike him about.
I only saw him recently talking about his Omarchy thing. Seemed too opinionated.
Yeah, I haven’t played all month!
Huh. I made a big comment reply to this and missed a crucial detail. Are you trying to just make it so that sitting in your own home, you can go to plex.mydomain.xyz instead of the IP?
What are you running plex on? Windows or Linux? On Linux, you can run this thing called Avahi. With it, you can set it up so that your computer starts advertising locally as whatever domain you specify. So I have server.local
and newserver.local
internally. I just go to server.local
on my browser inside my home and it takes me to the landing page of the server where I’ve got Heimdall running, which has links to plex and a bunch of other internal services I’m running.
I don’t know what the equivalent is in Windows, but we can jigger something up. Let me know what OS you’re running on what boxes.
TL;DR - don’t do this. Plex on Cloudflare is a bad idea. Read my last notes. Get the Plex Remote Watch Pass instead.
So, regular Cloudflare DNS is not the answer here. Your homelab is almost always natted. As in, there’s a public IP assigned to your home, but your internal network (192.168…) is… internal. Cloudflare doesn’t know of it.
One solution is to expose a port on your router. That would mean that if you go to plex.mydomain.xyz, Cloudflare DNS will send it to your home’s public IP and your router will send it to your internal computer based on that port request. This is NOT recommended. For one, your home’s public IP can change at any time. It’s your ISP’s choice what IP they want to assign to you. They can and will change it when they want to. Second, this opens up your internal network to a barrage of attacks.
A separate alternative is to use something like DynDNS (only if your router supports it). Then folks will go to yourplex.dyndns.io (or something) and that will send them to your router’s public IP, no matter how many times it changes. But if you want to use plex.mydomain.xyz then DynDNS charges you money and, afaik, it’s expensive. So no real point.
The better alternative is Cloudflared and Cloudflare Tunnels. This sits under https://one.dash.cloudflare.com/ → Networks → Tunnels.
Hit “Create a Tunnel” and select Cloudflared. Give it a name. Let’s call it “homeserver” (it doesn’t matter).
Once it’s created, click on the name and click Edit. (or maybe the instructions vary if you’re running it the first time). Select Docker, and it’ll give you instructions to run cloudflared as a docker container. The command will look like -
docker run cloudflare/cloudflared:latest tunnel --no-autoupdate run --token CLOUDFLARE_ASSIGNED_TOKEN
Then, you’ll have a tunnel. Once you have it up and running, go to Public Hostnames under the same “homeserver” tunnel edit option.
Add a Public hostname. Subdomain would be plex
and domain would be mydomain.xyz
(from the dropdown). No path.
For the “service” - type is HTTP mostly (unless you’re running SSL inside your home). And the URL is the internal IP address and port for you. So for Plex it’ll be
192.168.x.y:32400 (internal IP of the computer running Plex)
Once it’s saved and Cloudflare has propagated the change (usually a few seconds), you can go to plex.mydomain.xyz
and it’ll show your application 🙂
What’s going on here? Cloudflare’s Tunnel solution sidesteps the Cloudflare DNS feature. You still need your domain attached to your Cloudflare account. Cloudflare gets the request, realizes it’s a Tunnel request, finds the cloudflared container which you’re running inside your network, establishes a secure connection all the way to it. From there, the connection is inside your home, from your cloudflared docker container to your Plex installation and back.
NOTE: Once you do this, everyone who can go to plex.mydomain.xyz
(basically the entire internet) will be able to see your Plex setup. Make sure to include strong login credentials. If you do not have any login credentials, you can easily end up with complete strangers streaming your Plex library.
ALSO: This is against Cloudflare TOS. If you’re just using it once in a while, you might get away with it. But if not, Cloudflare will find out and boot your domain and might even close your account.
So…
If you are building this for friends and family, get the Plex Remote Watch Pass. It’s $20/year and one possible way for you to give Plex access to people. In this method, you do not need to use cloudflare tunnels or expose a port. Everyone creates a free account on Plex (or you create one account for everyone, and they create their own profiles, whatever) and you grant them access to your libraries. Then they go to app.plex.tv instead of plex.mydomain.xyz
, login, and get to your content.
Last Note: I use cloudflare tunnels a LOT. I use it for everything from RSS feeds to Calibre Web. All of my usecases are low traffic scenarios. Cloudflare is chill with those. Video streaming through their network is a whole different ballgame. Do NOT risk it.
This took me way too long to write. Cheers!
I bought a miniPC from AliExpress last year expecting 8GB RAM and Intel N100. The vendor sent an Intel N5095 with 4 GB RAM. I clawed most of my money back, but kept the machine for experimentation. Upped the RAM with the money I got back.
Alpine seems to work best for that machine. Though, I’m tempted to just put Debian on there so I can make docker and portainer agent work on it easily.
Update: Intel 5095, not Intel 50. My bad!
Hmm. Lofi enough solution. 😆
what are mesh von ips?
Oh, you mean e.g. always using the tailscale IP? Sure, I can do that. But it sure would be a pain since at home I use the .local domain very comfortably…
I know I wrote tailscale friendly, but the same applies to zerotier, Cloudflared, and dyndns, I guess…
haven’t looked at Pangolin, but thanks for the info! I might explore it in the future if my current setup gives me any issues.
pretty cheap to get a domain name through Cloudflare too - nine bucks a year for a .com , I think? Just get something completely personal or completely random! :D They even have a way to get emails routed to your general inbox. It’s fugly, but it works!
huh. I knew there was a reason for me to go back to ZT. mdns, you say? Nice to know!
You got two options which I’ve tried -
Lovely to see you share this!
Good idea!
Brands of what?
Thanks for mentioning SingleFile. I’m not using it right now.
I reckon the problem with that is… what’s the source for the recommendations and then what’s the sink?
Like, first, how do you get all that information about music, type of music, musicians, year of release etc?
Then where do you store it? Then you come to the problem of building a robust recommendation engine. Sure that’s one step that seems solvable with open source. Not easy. Solvable.
Then, what does a person do with the recommendations? So you have to build ways to export to YouTube, Spotify, Apple Music, FOSS music solutions. Perhaps plugins are the way to solve this.
Not saying it’s not doable. Just difficult.
Though I also believe someone would have tried to tackle it in their capacity in the FOSS world. Don’t know how Fedi plays into this. Maybe an online radio station?
Spotify scrobbles to LastFM. Maybe they have an API or export solution? All you would have to do is play your playlist straight through once after connecting to LastFM.
I don’t know about importing it further as I don’t know what Navidrome is.
Good read. Good caveats.