If you want to continue the chain of specific goals in service of no specific purpose: run Kubernetes on it.
While you are at it, also setup Longhorn for storage. With that solved, you might as well start hosting Gitea and DroneCI on the cluster, plus an extra helm- and docker repo for good measure. And in no time you will have a full modern CI/CD setup to do nothing but updates on! :-)
Seriously, though, you will learn a lot of things in the process and get a bottom up view of current stacks, which is definitely helpful.