distroless VS kubernetes

Compare distroless vs kubernetes and see what are their differences.

distroless

🥑 Language focused docker images, minus the operating system. (by GoogleContainerTools)

kubernetes

Production-Grade Container Scheduling and Management (by kubernetes)
Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
distroless kubernetes
122 651
17,487 106,117
2.0% 1.2%
9.3 10.0
7 days ago 1 day ago
Starlark Go
Apache License 2.0 Apache License 2.0
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

distroless

Posts with mentions or reviews of distroless. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-03-14.
  • Chainguard Images now available on Docker Hub
    3 projects | news.ycombinator.com | 14 Mar 2024
    lots of questions here regarding what this product is. I guess i can provide some information for the context, from a perspective of an outside contributor.

    Chainguard Images is a set of hardened container images.

    They were built by the original team that brought you Google's Distroless (https://github.com/GoogleContainerTools/distroless)

    However, there were few problems with Distroless:

    1. distroless were based on Debian - which in turn, limited to Debian's release cadence for fixing CVE.

    2. distroless is using bazelbuild, which is not exactly easy to contrib, customize, etc...

    3. distroless images are hard to extend.

    Chainguard built a new "undistro" OS for container workload, named Wolfi, using their OSS projects like melange (for packaging pkgs) and apko (for building images).

    The idea is (from my understanding) is that

    1. You don't have to rely on upstream to cut a release. Chainguard will be doing that, with lots of automation & guardrails in placed. This allow them to fix vulnerabilties extremely fast.

  • Long Term Ownership of an Event-Driven System
    4 projects | dev.to | 2 Oct 2023
    The same as our code dependencies, container updates can include security patches and bug fixes and improvements. However, they can also include breaking changes and it is crucial you test them thoroughly before putting them into production. Wherever possible, I recommend using the distroless base image which will drastically reduce both your image size, your risk vector, and therefore your maintenance version going forward.
  • Minimizing Nuxt 3 Docker Images
    2 projects | dev.to | 5 Aug 2023
    # Use a large Node.js base image to build the application and name it "build" FROM node:18-alpine as build WORKDIR /app # Copy the package.json and package-lock.json files into the working directory before copying the rest of the files # This will cache the dependencies and speed up subsequent builds if the dependencies don't change COPY package*.json /app # You might want to use yarn or pnpm instead RUN npm install COPY . /app RUN npm run build # Instead of using a node:18-alpine image, we are using a distroless image. These are provided by google: https://github.com/GoogleContainerTools/distroless FROM gcr.io/distroless/nodejs:18 as prod WORKDIR /app # Copy the built application from the "build" image into the "prod" image COPY --from=build /app/.output /app/.output # Since this image only contains node.js, we do not need to specify the node command and simply pass the path to the index.mjs file! CMD ["/app/.output/server/index.mjs"]
  • Build Your Own Docker with Linux Namespaces, Cgroups, and Chroot
    6 projects | news.ycombinator.com | 26 Jun 2023
    Lots of examples without the entire OS as other comments mention, an example would be Googles distroless[0]

    [0]: https://github.com/GoogleContainerTools/distroless

  • Reddit temporarily ban subreddit and user advertising rival self-hosted platform (Lemmy)
    2 projects | /r/selfhosted | 7 Jun 2023
    Docker doesn't do this all the time. Distroless Docker containers are relatively common. https://github.com/GoogleContainerTools/distroless
  • Why elixir over Golang
    10 projects | /r/elixir | 29 May 2023
    Deployment: https://github.com/GoogleContainerTools/distroless
  • Reviews
    3 projects | /r/golang | 17 May 2023
    Or use distroless image as it includes one, among others. https://github.com/GoogleContainerTools/distroless/blob/main/base/README.md
  • MRSK: Deploy Web Apps Anywhere
    8 projects | news.ycombinator.com | 29 Apr 2023
    I find Docker running a full Linux userspace a little bloated. Thankfully there are distroless base images(https://github.com/GoogleContainerTools/distroless). Haven't done service dev in a while, so I don't really have experience with this, but it looks promising.
  • Is it ok not to be able to run application locally?
    6 projects | /r/golang | 27 Apr 2023
    One of the things we did that helped was to use Go for fast builds, and then we build our binary into Google’s distroless base container image. This makes really tiny images (like 20-30MB images) so uploading the container images to our container repository and deploying to our dev K8S cluster is super fast! This helps make deploys fast.
  • Fearless Distroless
    3 projects | dev.to | 20 Apr 2023
    -- "Distroless" Container Images

kubernetes

Posts with mentions or reviews of kubernetes. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-03-19.
  • Open Source Ascendant: The Transformation of Software Development in 2024
    4 projects | dev.to | 19 Mar 2024
    Open Source and Cloud Computing: A Match Made in Heaven The cloud is accelerating OSS adoption. Cloud-native technologies like Kubernetes [https://kubernetes.io/] and Istio [https://istio.io/], both open-source projects, are revolutionizing how applications are built and deployed across cloud platforms.
  • Open source at Fastly is getting opener
    10 projects | dev.to | 15 Mar 2024
    Through the Fast Forward program, we give free services and support to open source projects and the nonprofits that support them. We support many of the world’s top programming languages (like Python, Rust, Ruby, and the wonderful Scratch), foundational technologies (cURL, the Linux kernel, Kubernetes, OpenStreetMap), and projects that make the internet better and more fun for everyone (Inkscape, Mastodon, Electronic Frontier Foundation, Terms of Service; Didn’t Read).
  • Experience Continuous Integration with Jenkins | Ansible | Artifactory | SonarQube | PHP
    8 projects | dev.to | 24 Feb 2024
    In this project, you will understand and get hands on experience around the entire concept around CI/CD from applications perspective. To fully gain real expertise around this idea, it is best to see it in action across different programming languages and from the platform perspective too. From the application perspective, we will be focusing on PHP here; there are more projects ahead that are based on Java, Node.js, .Net and Python. By the time you start working on Terraform, Docker and Kubernetes projects, you will get to see the platform perspective of CI/CD in action.
  • The 2024 Web Hosting Report
    37 projects | dev.to | 20 Feb 2024
    The single most important development in hosting since the invention of EC2 is defined by its own 3-letter acronym: k8s. Kubernetes has won the “container orchestrator” space, becoming the default way that teams across industries are managing their compute nodes and scheduling their workloads, from data pipelines to web services.
  • The Road To Kubernetes: How Older Technologies Add Up
    5 projects | dev.to | 5 Feb 2024
    Kubernetes was first released on September 9, 2014. This release timeline is part of what helped it gain a foothold over Docker Swarm. It was an open source version of an internal Google project. Features of container orchestration were presented in a more modular fashion along with scaling functionality. You can chose how your networking stack works, your load balancing, container runtime, and filesystem interfaces. Availability of an API allowed for more programmatic interactions with orchestration, making it tie in very well with CI/CD solutions. However, the big issue it has is complexity of setup. Putting together a Kubernetes cluster with basic functionality is certainly no easy feat.
  • Deploying flask app to Kubernetes using Minikube
    2 projects | dev.to | 31 Jan 2024
    Kubernetes manages the deployment, scaling, and operation of containerized applications across a cluster of machines. Kubernetes relies on tools such as container runtimes like Docker, to run the containers.
  • Oasis – a small, statically-linked Linux system
    12 projects | news.ycombinator.com | 26 Jan 2024
    If you go by version number and anything < 1.0 being not production ready, I recommend avoiding reading any of the dependency files for large software products which are often used in produciton, they might cause you some concern...

    https://github.com/kubernetes/kubernetes/blob/master/go.mod for one obvious example.

  • Fun with Avatars: Containerize the app for deployment & distribution | Part. 2
    4 projects | dev.to | 20 Jan 2024
    Container Orchestration tools: These are used to automate the deployment, scaling, monitoring, and management of containerized applications. These tools simplify the complexities of managing and coordinating containers across a cluster of machines. They include Kubernetes, Docker Swarm, Amazon ECS, Microsoft AKS, Google Kubernetes Engine (GKE), etc.
  • Exploring OpenShift with CRC
    2 projects | dev.to | 13 Jan 2024
    OpenShift Container Platform (OCP), otherwise known as just OpenShift, is a comprehensive, feature-complete enterprise PaaS offering by Red Hat built on top of Kubernetes, available both as a fully managed service on popular public cloud platforms such as AWS (ROSA) and as an internal developer platform (IDP) to be deployed on-premises on existing private cloud infrastructure, as VMs or on bare metal.
  • Why bad scientific code beats code following "best practices"
    3 projects | news.ycombinator.com | 6 Jan 2024
    There are some things that should be in one long function (or method).

    Consider dealing with the output of a (lexical) tokeniser. It is much easier to maintain a massive switch statement (or a bunch of ifs/elseifs) to handle each token, with calls to other functions to do the actual processing, such that each case is just a token and a function call. Grouping them in some way not required by the code is an illusory "gain": it hides the complexity of the actual function in a bunch of files you don't look at, when this is not a natural abstraction of the problem at all and when those files introduce extra layers of flow control where tricky bugs can hide. Or see the "PLEASE DO NOT ATTEMPT TO SIMPLIFY THIS CODE" comment from the Kubernetes source[0]. A 300 line function that does one thing and which cannot be usefully divided into smaller units is more maintainable than any alternative. Attempting to break it up will make it worse.

    That being said, I agree that nearly all 300 line functions in the wild are not like this.

    [0] https://github.com/kubernetes/kubernetes/blob/ec2e767e593953...

What are some alternatives?

When comparing distroless and kubernetes you can also consider the following projects:

Apache ZooKeeper - Apache ZooKeeper

bosun - Time Series Alerting Framework

Rundeck - Enable Self-Service Operations: Give specific users access to your existing tools, services, and scripts

kine - Run Kubernetes on MySQL, Postgres, sqlite, dqlite, not etcd.

BOSH - Cloud Foundry BOSH is an open source tool chain for release engineering, deployment and lifecycle management of large scale distributed services.

Juju - Orchestration engine that enables the deployment, integration and lifecycle management of applications at any scale, on any infrastructure (Kubernetes or otherwise).

SaltStack - Software to automate the management and configuration of any infrastructure or application at scale. Get access to the Salt software package repository here:

gaia - Build powerful pipelines in any programming language.

consul - Consul is a distributed, highly available, and data center aware solution to connect and configure applications across dynamic, distributed infrastructure.

Nomad - Nomad is an easy-to-use, flexible, and performant workload orchestrator that can deploy a mix of microservice, batch, containerized, and non-containerized applications. Nomad is easy to operate and scale and has native Consul and Vault integrations.

Packer - Packer is a tool for creating identical machine images for multiple platforms from a single source configuration.

Portainer - Making Docker and Kubernetes management easy.