Helm Install

helm install

install a chart

Synopsis

This command installs a chart archive.

The install argument must be a chart reference, a path to a packaged chart, a path to an unpacked chart directory or a URL.

To override values in a chart, use either the ‘–values’ flag and pass in a file or use the ‘–set’ flag and pass configuration from the command line, to force a string value use ‘–set-string’. In case a value is large and therefore you want not to use neither ‘–values’ nor ‘–set’, use ‘–set-file’ to read the single large value from file.

$ helm install -f myvalues.yaml myredis ./redis

or

$ helm install --set name=prod myredis ./redis

or

$ helm install --set-string long_int=1234567890 myredis ./redis

or

$ helm install --set-file my_script=dothings.sh myredis ./redis

You can specify the ‘–values’/'-f’ flag multiple times. The priority will be given to the last (right-most) file specified. For example, if both myvalues.yaml and override.yaml contained a key called ‘Test’, the value set in override.yaml would take precedence:

$ helm install -f myvalues.yaml -f override.yaml  myredis ./redis

You can specify the ‘–set’ flag multiple times. The priority will be given to the last (right-most) set specified. For example, if both ‘bar’ and ‘newbar’ values are set for a key called ‘foo’, the ‘newbar’ value would take precedence:

$ helm install --set foo=bar --set foo=newbar  myredis ./redis

To check the generated manifests of a release without installing the chart, the ‘–debug’ and ‘–dry-run’ flags can be combined.

If –verify is set, the chart MUST have a provenance file, and the provenance file MUST pass all verification steps.

There are five different ways you can express the chart you want to install:

  1. By chart reference: helm install mymaria example/mariadb
  2. By path to a packaged chart: helm install mynginx ./nginx-1.2.3.tgz
  3. By path to an unpacked chart directory: helm install mynginx ./nginx
  4. By absolute URL: helm install mynginx https://example.com/charts/nginx-1.2.3.tgz
  5. By chart reference and repo url: helm install –repo https://example.com/charts/ mynginx nginx

CHART REFERENCES

A chart reference is a convenient way of referencing a chart in a chart repository.

When you use a chart reference with a repo prefix (‘example/mariadb’), Helm will look in the local configuration for a chart repository named ‘example’, and will then look for a chart in that repository whose name is ‘mariadb’. It will install the latest stable version of that chart until you specify ‘–devel’ flag to also include development version (alpha, beta, and release candidate releases), or supply a version number with the ‘–version’ flag.

To see the list of chart repositories, use ‘helm repo list’. To search for charts in a repository, use ‘helm search’.

helm install [NAME] [CHART] [flags]

Options

      --atomic                   if set, installation process purges chart on fail. The --wait flag will be set automatically if --atomic is used
      --ca-file string           verify certificates of HTTPS-enabled servers using this CA bundle
      --cert-file string         identify HTTPS client using this SSL certificate file
      --dependency-update        run helm dependency update before installing the chart
      --devel                    use development versions, too. Equivalent to version '>0.0.0-0'. If --version is set, this is ignored
      --dry-run                  simulate an install
  -g, --generate-name            generate the name (and omit the NAME parameter)
  -h, --help                     help for install
      --key-file string          identify HTTPS client using this SSL key file
      --keyring string           location of public keys used for verification (default "~/.gnupg/pubring.gpg")
      --name-template string     specify template used to name the release
      --no-hooks                 prevent hooks from running during install
  -o, --output format            prints the output in the specified format. Allowed values: table, json, yaml (default table)
      --password string          chart repository password where to locate the requested chart
      --render-subchart-notes    if set, render subchart notes along with the parent
      --replace                  re-use the given name, only if that name is a deleted release which remains in the history. This is unsafe in production
      --repo string              chart repository url where to locate the requested chart
      --set stringArray          set values on the command line (can specify multiple or separate values with commas: key1=val1,key2=val2)
      --set-file stringArray     set values from respective files specified via the command line (can specify multiple or separate values with commas: key1=path1,key2=path2)
      --set-string stringArray   set STRING values on the command line (can specify multiple or separate values with commas: key1=val1,key2=val2)
      --skip-crds                if set, no CRDs will be installed. By default, CRDs are installed if not already present
      --timeout duration         time to wait for any individual Kubernetes operation (like Jobs for hooks) (default 5m0s)
      --username string          chart repository username where to locate the requested chart
  -f, --values strings           specify values in a YAML file or a URL(can specify multiple)
      --verify                   verify the package before installing it
      --version string           specify the exact chart version to install. If this is not specified, the latest version is installed
      --wait                     if set, will wait until all Pods, PVCs, Services, and minimum number of Pods of a Deployment, StatefulSet, or ReplicaSet are in a ready state before marking the release as successful. It will wait for as long as --timeout

Options inherited from parent commands

      --add-dir-header                   If true, adds the file directory to the header
      --alsologtostderr                  log to standard error as well as files
      --debug                            enable verbose output
      --kube-context string              name of the kubeconfig context to use
      --kubeconfig string                path to the kubeconfig file
      --log-backtrace-at traceLocation   when logging hits line file:N, emit a stack trace (default :0)
      --log-dir string                   If non-empty, write log files in this directory
      --log-file string                  If non-empty, use this log file
      --log-file-max-size uint           Defines the maximum size a log file can grow to. Unit is megabytes. If the value is 0, the maximum file size is unlimited. (default 1800)
      --logtostderr                      log to standard error instead of files (default true)
  -n, --namespace string                 namespace scope for this request
      --registry-config string           path to the registry config file (default "~/.config/helm/registry.json")
      --repository-cache string          path to the file containing cached repository indexes (default "~/.cache/helm/repository")
      --repository-config string         path to the file containing repository names and URLs (default "~/.config/helm/repositories.yaml")
      --skip-headers                     If true, avoid header prefixes in the log messages
      --skip-log-headers                 If true, avoid headers when opening log files
      --stderrthreshold severity         logs at or above this threshold go to stderr (default 2)
  -v, --v Level                          number for the log level verbosity
      --vmodule moduleSpec               comma-separated list of pattern=N settings for file-filtered logging

SEE ALSO

  • helm - The Helm package manager for Kubernetes.
Auto generated by spf13/cobra on 4-Feb-2020