How to have kubernetes (re)build containers on deployment similar to openshifts ImageStream I am currently investigating how to manage the containers for our new data-processing pipeline.

What I would like to do is to be able to have whatever tool I choose rebuild the docker images when I have a new version ready in git (without me having to come up with a name for the docker image). I have found that OpenShifts ImageStreams does this but OpenShift feels like an intrusive dependency so I am searching for a well supported way of doing this with a more clean kubernetes install.

I have looked at helm but did not find this feature.

So

What is the most mature and widely supported tool that can build the containers automatically during the deployment to kubernetes?
You need something that will do basically CI/CD. There are few options (in no particular order):


Gitlab + autodeploy (or custom deployment)
skaffold + git-sync + kaniko


There are more, but basically, you need a component to watch for changes, something that knows how to build an image, and something else that can deploy it (some of these might be done by the same tools)

Helm will only do the deployment, but nothing else