can you boot a server if someone tries to connect
-
I've got a mini pc which is running always and another one which consumes a lot more power for e.g. jellyfin.
Can I configure it such that the jellyfin server only boots if I connect to it? E.g. I try to connect to jellyfin.y.com and then the server boots because the mini pc tries to connect to it.
I already figured out how to let it sleep automatically as soon as nobody is watching.
I made a tool that can hibernate systemd services when no request get through their associated nginx service. Using it on jellyfin, works great
-
I made a tool that can hibernate systemd services when no request get through their associated nginx service. Using it on jellyfin, works great
I assume this works like the reverse of socket activation? If so, that's pretty rad!
That said, that doesn't really solve OP's problem, and I'm not exactly sure what it's solving for you. Jellyfin doesn't really use any resources when idle, so it's not going to save on power or anything like that.
That said, you could probably create an interesting service like this. Basically, if the last interesting service shuts down, you shut the whole machine down, and then use WoL to start it back up when someone wants it. Tune it a bit to reduce how often it reboots (i.e. extend life of your disks) and reduce boot times (i.e. don't mount the RAID until it's needed), and it could be really cool!
-
Thanks!
I use nginxproxymanager, I'll try to find something similar (I couldn't find something directly)
I use nginxproxymanager
-
I use nginxproxymanager
Whats wrong with NPM?
-
Whats wrong with NPM?
I mean, use what you want. But caddy is significantly easier to configure. It additionally handles SSL and protects your proxy targets with zero configuration (by default) and supports live configuration reload via the admin interface. It's tits.
-
I assume this works like the reverse of socket activation? If so, that's pretty rad!
That said, that doesn't really solve OP's problem, and I'm not exactly sure what it's solving for you. Jellyfin doesn't really use any resources when idle, so it's not going to save on power or anything like that.
That said, you could probably create an interesting service like this. Basically, if the last interesting service shuts down, you shut the whole machine down, and then use WoL to start it back up when someone wants it. Tune it a bit to reduce how often it reboots (i.e. extend life of your disks) and reduce boot times (i.e. don't mount the RAID until it's needed), and it could be really cool!
Exactly. It's like socket activation but plugged into nginx. It might or might not fit OP's use case, as when you have many small services like jellyfin, ram usage starts adding up. Adding automatic shutdown is a great idea
-
Exactly. It's like socket activation but plugged into nginx. It might or might not fit OP's use case, as when you have many small services like jellyfin, ram usage starts adding up. Adding automatic shutdown is a great idea
I can see that, especially if running on limited hardware. My server has way more RAM than it needs though (16GB), so saving 50MB here and there isn't very important.
-
I mean, use what you want. But caddy is significantly easier to configure. It additionally handles SSL and protects your proxy targets with zero configuration (by default) and supports live configuration reload via the admin interface. It's tits.
That sounds more or less to be exactly what I'm doing with NPM currently. I don't see how it's easier to configure as all I did was fire up the NPM container, log in, and add my host targets.
-
I use nginxproxymanager
I'd be happy to switch if I had a good tutorial for caddy. Unfortunately I couldn't find one.
-
I'd be happy to switch if I had a good tutorial for caddy. Unfortunately I couldn't find one.
How complex is your nginx reverse proxy? Caddy is relatively straight forward: https://i.xno.dev/u/fc8N0n.png
-
How complex is your nginx reverse proxy? Caddy is relatively straight forward: https://i.xno.dev/u/fc8N0n.png
It doesn't work. I can't manage to debug it.
Fedora server. Podman. Selinux. Port 8443. Ipv4.
-
It doesn't work. I can't manage to debug it.
Fedora server. Podman. Selinux. Port 8443. Ipv4.
it doesn't work
...what exactly doesn't work. You're not really giving me enough to help you with.
-
it doesn't work
...what exactly doesn't work. You're not really giving me enough to help you with.
Thx for offering your help.
If I would know, I could debug it, but I don't know where the problem is. I assume the problem is somewhere with podman or selinux
-
Thx for offering your help.
If I would know, I could debug it, but I don't know where the problem is. I assume the problem is somewhere with podman or selinux
But you gotta understand, there's no subject to your statement. You just said "it doesn't work" and I have no idea what you're doing. Are you installing podman? Are you installing caddy? Are you setting up caddy as a reverse proxy? Are you trying to bring your dog back from the dead? I have no frame of reference.
-
But you gotta understand, there's no subject to your statement. You just said "it doesn't work" and I have no idea what you're doing. Are you installing podman? Are you installing caddy? Are you setting up caddy as a reverse proxy? Are you trying to bring your dog back from the dead? I have no frame of reference.
Sorry for not having expressed what I did.
I wrote a podman compose file, pulled the caddy image, wrote a caddyfile, started it and tried to connect to a service via subdomain.domain.tld .The caddyfile contains my http and tls ports and the domain and ip for the reverse proxy routing according to the docs.
-
Thanks! I use wake on lan to boot at a certain time. I also found an app via which I can boot the server via wake on lan. But it would be nice if it could wake up just by requesting the service
That's how it works. Wake-on-LAN wakes the computer if the computer receives a network request. Which is the same thing you're asking for, right?
-
Sorry for not having expressed what I did.
I wrote a podman compose file, pulled the caddy image, wrote a caddyfile, started it and tried to connect to a service via subdomain.domain.tld .The caddyfile contains my http and tls ports and the domain and ip for the reverse proxy routing according to the docs.
Did you setup DNS to point to your caddy sever?
-
Sorry for not having expressed what I did.
I wrote a podman compose file, pulled the caddy image, wrote a caddyfile, started it and tried to connect to a service via subdomain.domain.tld .The caddyfile contains my http and tls ports and the domain and ip for the reverse proxy routing according to the docs.
You'll probably get better help if you post your config and any logs. Caddy may not log an entry to a file but you can watch the console logs to see everything (
podman logs caddy
or similar.) -
You'll probably get better help if you post your config and any logs. Caddy may not log an entry to a file but you can watch the console logs to see everything (
podman logs caddy
or similar.)Thanks. For now, I spend too much time with it. I'll try some other time again.
-
Did you setup DNS to point to your caddy sever?
Yes, it works with nginxproxymanager. There's probably something going on with selinux - I may disable it the next time to test the assumption.