Before I dabbled a bit with Docker. I wanted to dabble a bit with Podman because it seemed quite interesting. I reinstalled Pi OS Lite on my Pi 3B+ and installed Podman. Then I figured out what to run and started digging through the documentation. Apparently Docker containers work quite similar and even Docker compose can be used. Then I came across the auto update function and stumbled upon quadlets to use auto update and got confused. Then I tried reading up on Podman rootless and rootful and networking stuff and really got lost.
I want to run the following services:
- Heimdall
- Adguard Home
- Jellyfin
- Vaultwarden
- Nextcloud
I am not sure a Pi is even powerful enough to run these things but I am even more unsure about how to set things up. Do I use quadlets? Do I run containers? How do I do the networking so I can reach the containers (maybe even outside my home)?
Can someone point me in the right direction? I can’t seem to find the needed information.
I use podman mainly because it’s very easy to manage using systemd services. Unfortunately, the command for generating these service files,
podman-generate
, is deprecated and won’t receive new features.Auto updating is done just using a simple tag and enabling a systemd timer to do it regularly for you.
It’s easiest to start with the rootful mode, you won’t have additional settings to set and no issues with permissions, UIDs and networking.
For networking, I always create a network per service I want to run. For example Nextcloud and its database would go in one network and you’d only forward the port for the webinterface for outside access.
In addition to networks I also use pods, this basically groups the containers together to start/stop them as one. If you use this, you have to set your port forwarding here.
Podman-generate was replaced by Quadlet .container files, which works better.
And a Pod also has it’s own virtual network, why manually create one?