A good local development feedback loop is a topic of rapid development of the Kubernetes ecosystem.
Breaking down this question, I believe that there are several tools that support this goal well.
Docker for Mac Kubernetes
Docker for Mac Kubernetes ( Docker Desktop is the common name for cross-platform) provides an excellent opportunity for local development. For virtualization, it uses HyperKit, which is built on its own Hypervisor platform in macOS instead of VirtualBox.
Kubernetes was first released as a beta version on the border channel in January 2018 and has since come a long way, becoming Kubernetes certified in April 2018 and switching to a stable channel in July 2018 .
In my experience, working with Minikube is much easier, especially on macOS, especially when it comes to issues such as RBAC, Helm, hypervisor, private registry, etc.
Helmet
As for distributing your code and getting updates locally, Helm is one of the most popular options. You can publish your applications via CI / CD in the form of Helm diagrams (as well as the basic Docker images to which they refer). You can then extract these diagrams from the Helm map registry locally and update them in your local cluster.
Azure draft
You can also use a tool such as Azure Draft to perform simple local deployments and create Helm basic diagrams from common language templates, such as buildpacks, to automate this part of the puzzle.
Skaffold
Skaffold is like a draft of Azure, but more mature, much wider in size and made by Google. It has a very plug-in architecture. I think that in the future more and more people will use it to develop local applications for Kubernetes.
If you used React, I think of Scaffold as " Create a React Application for Kubernetes."
Composition or Composition on Kubernetes
Docker Compose , although not affiliated with Kubernetes, is one of the alternatives that some companies use to provide a simple, lightweight, and portable local development environment similar to the Kubernetes environment they use in production. However, following this path means a discrepancy between your production and local development settings.
Kompose is a Docker Compose to Kubernetes converter. This can be a useful way for those who are already running their applications as collections of containers locally.
Compose in Kubernetes is a recently opened (from December 2018) offer from Docker, which allows you to deploy Docker Compose files directly to a Kubernetes cluster through a special controller.