The Kubernetes Package Manager
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Go to file
Matt Butcher a87b33c94e
Merge pull request #1175 from philips/move-history-readme
8 years ago
_proto feat(charts): add 'dependencies:' to Chart.yaml 8 years ago
cmd Merge pull request #1179 from adamreese/ref/helm-tunnel 8 years ago
docs docs(README): move history to docs/history.md 8 years ago
pkg Merge pull request #1155 from fibonacci1729/feat/rollback-storage 8 years ago
rootfs chore(*): add missing license blocks to source code 8 years ago
scripts fix(ci): disable running coverage in parallel 8 years ago
.gitignore fix(git): ignore _dist directory 8 years ago
CONTRIBUTING.md fix(CONTRIBUTING): add guidelines for security issues 8 years ago
LICENSE fix(LICENSE): add copyright year and authors 8 years ago
Makefile fix(Makefile): cleanup _dist files 8 years ago
README.md docs(README): move history to docs/history.md 8 years ago
circle.yml feat(ci): run tests on go 1.7 8 years ago
code_of_conduct.md feat(code of conduct): add code of conduct 8 years ago
glide.lock feat(pkg/provenance): add OpenPGP signatures 8 years ago
glide.yaml feat(pkg/provenance): add OpenPGP signatures 8 years ago
versioning.mk chore(*): use k8s.io as the import path 8 years ago

README.md

Kubernetes Helm

CircleCI

Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured Kubernetes resources.

Use Helm to...

  • Find and use popular software packaged as Kubernetes charts
  • Share your own applications as Kubernetes charts
  • Create reproducible builds of your Kubernetes applications
  • Intelligently manage your Kubernetes manifest files
  • Manage releases of Helm packages

Helm in a Handbasket

Helm is a tool that streamlines installing and managing Kubernetes applications. Think of it like apt/yum/homebrew for Kubernetes.

  • Helm has two parts: a client (helm) and a server (tiller)
  • Tiller runs inside of your Kubernetes cluster, and manages releases (installations) of your charts.
  • Helm runs on your laptop, CI/CD, or wherever you want it to run.
  • Charts are Helm packages that contain at least two things:
    • A description of the package (Chart.yaml)
    • One or more templates, which contain Kubernetes manifest files
  • Charts can be stored on disk, or fetched from remote chart repositories (like Debian or RedHat packages)

Docs

Install

Download a release tarball of helm and tiller for your platform. Unpack the helm and tiller binaries and add them to your PATH and you are good to go! OS X/Cask users can brew cask install helm.

Install from source

To install Helm from source, follow this process:

Make sure you have the prerequisites:

  • Go 1.6
  • A running Kubernetes cluster
  • kubectl properly configured to talk to your cluster
  • Glide 0.10 or greater with both git and mercurial installed.
  1. Properly set your $GOPATH
  2. Clone (or otherwise download) this repository into $GOPATH/src/k8s.io/helm
  3. Run make bootstrap build

You will now have two binaries built:

  • bin/helm is the client
  • bin/tiller is the server

From here, you can run bin/helm and use it to install a recent snapshot of Tiller. Helm will use your kubectl config to learn about your cluster.

For development on Tiller, you can locally run Tiller, or you build a Docker image (make docker-build) and then deploy it (helm init -i IMAGE_NAME).

The documentation folder contains more information about the architecture and usage of Helm/Tiller.