I've always relied on DevOps professionals to handle building the fundamentals of CI/CD pipelines. My son is learning some web programming, so I took it as an opportunity to set up a basic deployment pipeline from GitLab to my personal Docker and k8s systems for him myself.
I figured I should include Jenkins since I always see that used to orchestrate things. Boy howdy, what a nightmare. I'm sure it's just a reflection of its capabilities (and age), but I couldn't make heads or tails of the configuration once I had it up and running.
I changed course and burned that all down, focusing on getting GitLab runners up on my Docker and k8s systems. That was much more tractable and I now have a working pipeline from gl > docker > k8s. @gitlab is doing some great work.
This server is built by @email@example.com for personal hosting purposes.