What are the advantages of deploying with Helm chart over Docker image to a Kubernetes cluster?

4/11/2020

I need to deploy NGINX to a Kubernetes cluster, for which I can either use a Helm chart or a Docker image. But I am not clear of the benefits of using a Helm chart. I guess my question is not specific to NGINX but in general.

-- user11081980
kubernetes
kubernetes-helm

2 Answers

4/12/2020

A helm chart and a container image aren't equivalent things to compare in Kubernetes

A container image is the basic building block of what kubernetes runs. An image will always be required to run an application on kubernetes, no matter how it is deployed.

Helm is a packaging and deployment tool. It makes management of deployments to kubernetes easier. This deployment would normally include a container image. It is possible to write a helm chart that just manages other kubernetes resources but fairly rare.

Other tools in the same arena as helm are kustomize, kompose, or using kubectl to apply or create resources. These are all clients of the kubernetes API.

-- Matt
Source: StackOverflow

4/13/2020

Helm Charts: making it simple to package and deploy common applications on Kubernetes [1]. Helm brings three major benefits to your service deployments [2]:

  • Deployment speed
  • Helm chart on Kubernetes for application configuration templates
  • Application testing

Use of Helm charts is recommended, because they are maintained and typically kept up to date by the Kubernetes community [3].

[1] https://kubernetes.io/blog/2016/10/helm-charts-making-it-simple-to-package-and-deploy-apps-on-kubernetes/

[2] https://www.nebulaworks.com/blog/2019/10/30/three-benefits-to-using-a-helm-chart-on-kubernetes/

[3] https://cloud.google.com/community/tutorials/nginx-ingress-gke

-- Shafiq I
Source: StackOverflow