Skip to content

renault-digital/docker-helm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

66 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

kubernetes helm

Docker Image CI Push Docker Image Trivy

Auto-trigger docker build for kubernetes helm when new release is announced.

DockerHub Badge

NOTES

The latest docker tag is the latest release version (https://github.com/helm/helm/releases/latest)

Please avoid to use latest tag for any production deployment. Tag with right version is the proper way, such as renaultdigital/helm:3.1.1

Same image as alpine-docker with:

  • curl
  • helm-push: latest
  • yq: v3.3.0

Github Repo

https://github.com/renault-digital/helm

Daily Travis CI build logs

https://travis-ci.org/renault-digital/helm

Docker image tags

https://hub.docker.com/r/renaultdigital/helm/tags/

Usage

# mount local folders in container.
docker run -ti --rm -v $(pwd):/apps -w /apps \
    -v ~/.kube:/root/.kube -v ~/.helm:/root/.helm -v ~/.config/helm:/root/.config/helm \
    -v ~/.cache/helm:/root/.cache/helm \
    renaultdigital/helm

# Run helm with special version. The tag is helm's version
docker run -ti --rm -v $(pwd):/apps -w /apps \
    -v ~/.kube:/root/.kube -v ~/.helm:/root/.helm -v ~/.config/helm:/root/.config/helm \
    -v ~/.cache/helm:/root/.cache/helm \
    renaultdigital/helm:3.1.1

# run container as command
alias helm="docker run -ti --rm -v $(pwd):/apps -w /apps \
    -v ~/.kube:/root/.kube -v ~/.helm:/root/.helm -v ~/.config/helm:/root/.config/helm \
    -v ~/.cache/helm:/root/.cache/helm \
    renaultdigital/helm"
helm --help

# example in ~/.bash_profile
alias helm='docker run -e KUBECONFIG="/root/.kube/config:/root/.kube/some-other-context.yaml" -ti --rm -v $(pwd):/apps -w /apps \
    -v ~/.kube:/root/.kube -v ~/.helm:/root/.helm -v ~/.config/helm:/root/.config/helm \
    -v ~/.cache/helm:/root/.cache/helm \
    renaultdigital/helm'

Why we need it

Mostly it is used during CI/CD (continuous integration and continuous delivery) or as part of an automated build/deployment

The Processes to build this image

  • Enable Travis CI cronjob on this repo to run build daily on master branch
  • Check if there are new tags/releases announced via Github REST API
  • Match the exist docker image tags via Hub.docker.io REST API
  • If not matched, build the image with release version and push to https://hub.docker.com/
  • Get the latest version from https://github.com/helm/helm/releases/latest, pull the image with that version, tag as renaultdigital/helm:latest and push to hub.docker.com

Contribution

Before any contribution, test your code :

  • using our testing script: .githooks/pre-commit
  • by registering our githooks: git config --local core.hooksPath .githooks/

Credits

Original works from https://github.com/alpine-docker/helm.

About

Automatic helm docker image build

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published