1.3 KiB
1.3 KiB
My homelab now uses runit-managed podman containers.
If, for some reason,
runit
and all its variants disappear,
you can get everything going this way:
for service in */; do
(cd $service && ./run) &
done
Architecture
Many of these services are web-based. All my web-based services run behind caddy.
simpleauth authenticates requests to most web-based services, using caddy's forward-authentication mechanism.
portal is a basic landing page that lists services, so people don't have to remember a dozen URLs.
Because I'm double-NATted, I run coredns so that LAN machines can get to the services.
A few odd ducks:
- atlas is a RIPE Atlas Probe, used by RIPE to do research on the Internet. I don't get anything out of this, other than feeling like I'm being helpful.
- oscar is a full-featured login shell that I ssh into, instead of the host OS, which has hardly anything installed.
- sys-backup is a periodic job to back up the host OS configuration.
- service-sync copies all this stuff from the host OS into my repo, and occasionally I commit the changes. This is covered by sys-backup, but I like having these services on my git server, so people can look at how it works.