6

Oh my.. I think I'm enjoying molesting kubernetes :)

A while ago I got pissed at k8s because with 1.24 they brought backward-incompatible changes, ruling my cluster broken. Then I thought to myself: "why not create a Docker image that would run kubernetes inside? Separate images for control plane, agent and client"

Took me a while, but I think tonight I've had a breakthrough (I love how linux works...)!! The control-plane is spinning up!! Running on containerd

Still needs some work and polishing, but hey! Ephemeral k8s installation with a single docker-run command sure sounds tempting!

P.S. Yes, I know there is `kind` and 'kinder', but I'm reluctant to install a separate tool that installs a set of tools for me. Kind of... too shady. Too many moving parts. Too deeply hidden parts I may have to fix. Having a dumb-simple Dockerfile gives me the openness, flexibility and simplicity I want. + I can always use it as a base image to add my customizations later on! Reinstalling a cluster would be a breeeeeeze

Comments
  • 3
    I love how your simple solution was to involve docker.

    Docker gets so much hate because of the shitty corporate leach attached to it, but it's clearly a far simpler solution to container management than anything currently available.
  • 1
    @sariel well, FWIW I'll be only using Docker to build the images. And once built, the images will be running on contained in my environments.

    It would run on any OCI-compliant CRI: containerd, Docker, CRI-O, etc...
  • 1
    @netikras that's the point of it.

    Or you could try podman/ Red hat and go for CriO.

    https://lwn.net/Articles/902049/

    Article is for paid subscription only, but worth a read imho.

    Sad that it didn't pan out with 1.24 in the beginning, remember your rant.
  • 0
    @sariel Docker doesn't get hate for the company alone.

    I could bring up many examples, but just look at the docker-compose v2 change logs.

    https://github.com/docker/compose/...

    They've killed the python client, replaced it with Go and haven't managed a single release without fucking up sth.

    From 2.0 to 2.8 in less than a year and it still isn't in good to use shape.

    We still use the old and deprecated python client because switching would be suicidal.
  • 0
    @IntrusionCM thanks for the guidance back in that rant :) you helped me out.
  • 0
    @IntrusionCM podman and IBM can fuck off.

    Podman will always get a fail from me because they market it as a "drop-in replacement" to docker... Which it's very much not.

    Who killed the python client exactly?

    Also, I'm glad they killed it. Python is many things, a compiled language it is not.

    Go will run far more efficiently and is a better "drop-in replacement" than podman could ever deliver.

    IMO docker is the easiest container management service that doesn't require expensive hardware and months of training.
Add Comment