view the rest of the comments
Selfhosted
A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.
Rules:
-
Be civil.
-
No spam.
-
Posts are to be related to self-hosting.
-
Don't duplicate the full text of your blog or readme if you're providing a link.
-
Submission headline should match the article title.
-
No trolling.
-
Promotion posts require active participation, with an account that is at least 30 days old. F/LOSS without a paywall has exceptions, with requirements. See the rules link for details. Tags [CBH] or [AIP] are required, see the links in Rule 8 for details.
-
AI-related discussions and AI-involved promotional posts have additional requirements for tagging, as noted in Rule 7 and the AI & Promotional Post Expanded Rules post, and find example disclosures here.
Resources:
- selfh.st Newsletter and index of selfhosted software and apps
- awesome-selfhosted software
- awesome-sysadmin resources
- Self-Hosted Podcast from Jupiter Broadcasting
Any issues on the community? Report it using the report flag.
Questions? DM the mods!
Nice, did the move from docker to podman a couple of months ago myself. Now running the arr stack, nextcloud, immich and some other services as quadlets. File permission due to podmans rootless nature usually was the culprit if something was not working properly.
I can share my quadlet systemd files I use for the arr stack. I deployed it as a pod:
I run my podman containers in a VM running Alma Linux. Works pretty great so far.
Had the same issue when debugging systemctl errors, journalctl not being very helpful. At one point I just ran
podman logs -f <container>in another terminal in a while loop just to catch the logs of the application. Not the most sophisticated approach, but it works ๐This is nice, makes me inspired to set up my stack with podman again!
Hey, idk if you have a solution for me, but UserNS is not allowed to run together with Pod anymore. Since there is so insanely little information on quadlets, I'm having a hard time starting this up. Did you update yet and found a solution to the problem? (I'm new to podman, at least I got jellyfin somewhat running haha)
Yeah faced that issue a couple of weeks ago as well after updating Podman. It didn't allow me to set container individual UID/GID mappings or UserNS when running in a pod, so I just took them out of the pod as I couldn't be bothered and run them as separate containers in the same network. Works just as good.
You just have to make sure to move the PublishPort block from the pod quadlet to the gluetun container (for all the containers which route their traffic through gluetun, i.e. which have 'Network=container: gluetun' set). This should solve the problem and still allows you to use UserNS or UID/GID mappings on the containers. No disadvantages so far, you just lose the convenience of stopping/starting all the containers at once through the pod. But I'd rather take this 'inconvenience' than troubleshooting for days how to make it work with a pod again.
Nice, thanks for sharing. How did you solve the file permission issue?
Also I see you put all your services as a single pod quadlet what I am trying to achieve is to have every service as a separate systemd unit file, that I can control separately. In this case you also have a complication with the network setup.
That's where
UserNS=keep-id:uid=1000,gid=1000comes into play. It "maps" the containers' user to your local user on the host to some extent, there is a deeper explanation of what exactly it does in this GitHub issue: https://github.com/containers/podman/issues/24934Well the pod only links the container together, it's not one systemd file. Every container has its own file, so does the pod and the network (separated by '---' in my code block above). You still can start and stop each container as a service separately or just the whole pod with all containers linked to it. Pods have the advantage that the containers in them can talk to each other more easily.
The network I just created to separate my services from each other. Thinking of it, this was the old setup, as I started using gluetun and run it as a privileged container, it's using the host network anyway. I edited my post above and removed the network unit file.
nice ๐ , this is what I've been looking for, out of interest, as you have split all the containers out of the pod now do you have a setup guide for this ? or similar to above showing maybe an examples of the global.env file and network setup ?
do you find Flaresolverr is still a reliable option ? I've seen mention of alternatives like Byparr
Sorry didn't find the time until now to reply. Also in the process of migrating everything to my Kubernetes cluster, so this is not as up to date in regards to image versions as it should be.
This is my current setup, with only qBittorrent and SABnzbd going through the Gluetun VPN container. Everything else just uses my regular home internet:
The
global.envfile only contains env variables like TZ or the PUID and PGID which are used in almost all my containers.Thank you so much for this, I managed to cobble together a working stack after asking the question, but your unit files have quite a few additions, I've since added these to my setup.๐
I had to use byparr in place of flaresolverr and for port forwarding to be updated to qbittorrent I had to use a sidecar container qsticky.
I also had issues with gluetun dropping the forwarded port sometimes hours sometimes days after setting it. I've since switched to latest for gluetun as it has some fixes, that may work. I'll test it for a while to see if it improves or possibly switch to hotio's image of qbittorrent with vpn support.