Developing applications for Kubernetes introduces some unique challenges that are not present for classical development pipelines. The perfect solution would be introducing minimal changes to the pipelines and processes, but, unfortunately, it is not as simple as that. First of all, you need to maintain a development Kubernetes cluster where you deploy, test, and debug your applications. Secondly, you have to containerize your applications and deploy them to the dev cluster, possibly with more flexibility and access than in a secure production cluster.
Informally, for Kubernetes applications development, you have four modes (concepts) that have been illustrated in the following diagram:
Let's have a look at these four modes:
- Fully offline: In a fully offline (local) environment, your development environment and Kubernetes cluster are...