How does Spread know to update image in Kubernetes?

I want to set up a Gitlab CD to Kubernetes and I read this article

However, I am wondering, how is it that my K8 cluster would be updated with my latest Docker images?

  • Strange Vagrant error with Docker and shell provisioners
  • Connect Docker Containers: Frontend to GraphQL Backend via Docker Compose on the same Host
  • How to remove multiple docker images with the same imageID?
  • Automatically append docker container to upstream config of nginx load balancer
  • How to bring apache2 default web page im my browser with Dockerfile using jenkins
  • Docker : Cannot connect to the Docker daemon. Is the docker daemon running on this host?
  • For example, in my .gitlab-ci.yaml file I will have a build, test, and release stage that ultimately updates my cloud Docker images. By setting up the deploy stage as instructed in the article:

    deploy:
      stage: deploy
      image: redspreadapps/gitlabci
      script:
      - null-script
    

    would Spread then know to “magically” update my K8 cluster (perhaps by repulling all images, perform rolling-updates) as long as I set up my directory structure of K8 resources as is specified by Spread?

  • How to get mac host IP address from a docker container?
  • TFS workspace with Jenkins Docker container
  • Docker composer project can't find/ping or connect to internal hostnames
  • Swarm node Status down, but node should be Ready
  • password define for ssh connection into docker container
  • Docker container communicating with external database
  • One Solution collect form web for “How does Spread know to update image in Kubernetes?”

    I don’t have a direct answer, but from looking at the spread project it seems pretty dead. Last commit in Aug last year with a bunch of issues and not supporting any of the newer kubernetes constructs (e.g. deployments).

    The typical way to update images in kubernetes nowadays is to run a command like kubectl set image <deployment-name> <image>. This will in turn perform a rolling update on the deployment and shutting down a POD at a time updating it with the new image. See this doc.

    Since spread is from before that, I assume they must use rolling update replication controller with a command like kubectl rolling-update NAME -f FILE and picking up the new image from the configuration file in their project folder (assuming it changed). See this doc.

    Docker will be the best open platform for developers and sysadmins to build, ship, and run distributed applications.