GitHub Actions Managed/Hosted runners are great most of the time and super convenient
but also:
- limited on CPU/RAM
- slower than your own hardware or cloud provider
- limited to Intel runners
- limited on concurrent jobs
- and those e2e tests are making you miserable
So..
You think self-hosted runners might be the solution? You add a VM and
It takes you a day to install all the packages
You get conflicts between dirty state from prior builds
You schedule too few or too many builds and crash the server
You've created a "pet" server 😣
Someone says "we're using actions-runner-controller" on K8s, but what about "docker build"?
You can't build containers securely with Docker since it needs DIND / Privileged containers
You can't run a full KinD/K3s cluster in a job
You know it's wrong, but you do it anyway 🙈
Enter actuated 🤘
1) You set up a number of hosts with a bare OS and our agent binary 2) We run the control plane and start one-shot microVMs for every job 3) We managed the base VM image with all its tools 4) We schedule efficiently not to waste money or to exceed resources
So if you want to:
Get self-hosted benefits, whilst running Docker / K8s securely, without worrying about resource allocation, sign up for the pilot.
Check out my new netbooting workshop for @Raspberry_Pi
"This had been something I wanted to do but finding all the resources in one place was driving me crazy, your workshop came at just the right time. Thanks for such a great tutorial!" ⭐️⭐️⭐️⭐️
I had a long conversation with an old colleague today who founded a fast-growing SaaS product - 200k+ customers and he's running it all on a single @DigitalOcean Droplet with "Dokku" (Docker triggered by GitHub)
I am also not sure if the answer is Kubernetes 🙀
1/
To begin with I was concerned about whether it would A) scale with demand and B) handle the loss of a node
A) was is easier for him, he bumped up to 16 vCPU after a recent slow-down
B) this is a concern and my gut reaction is Kubernetes
2/
But my friend didn't know what Kubernetes was, or how it compared to Docker. He also didn't know the ecosystem or how to add metrics and monitoring to the services.
"I see you saying 'Cloud Native' a lot" he said, what does that mean? I tried to come up with a definition.
3/