• Cross-compiling Go programs for multiple architectures and platforms

    2 min read

    Golang compile cross-compile multiarch GOOS GOARCH

    One of Go's great features is the ability to cross-compile your code for different platforms and architectures, allowing you to run your applications on a variety of systems.

    To do so we won't need to install emulators or additional tools, we are just going to use the go command


  • How to build a multi architecture container using rootless nerdctl

    3 min read

    nerdctl rootless buildkit

    One of the great things about using nerdctl is that it does not try to include everything you might need. This means that if you try to build a container using nerdctl you'll realize you still need to install the buildkit (unless you have installed the "nerdctl-full" version)

    Moreover it's something you don't actually need to have installed locally:

    $ nerdctl build --help | grep buildkit
    Build an image from a Dockerfile. Needs buildkitd to be running.
          --buildkit-host string     BuildKit address [$BUILDKIT_HOST] (default "unix:///run/user/1000/buildkit/buildkitd.sock")


  • How to build a multi architecture docker image using a github action

    3 min read

    Using buildx we can build multi architecture containers, we can use a github action to automatically build it


  • How to build a multi architecture container using buildx

    7 min read

    docker buildx

    Docker has the ability to handle multi architecture containers: Using the same container image and tag we can deploy it on multiple architectures such as Intel and ARM. Since a docker container is composed of multiple layers it will just use one or another depending on the architecture we are running it. From the user perspective there's no difference on it's usage, but how do we build them?



From pet to cattle
Treat your kubernetes clusters like cattle, not pets