Kubernetes has made it very easy to deploy applications to the cloud at a higher scale than ever, but the development practices have not evolved at the same speed as application deployment patterns.
Today, most developers try to either run parts of the infrastructure locally, or just test these integrations directly in the cluster via the "docker build, docker push, kubectl apply" cycle. It works, but this workflow is painful and incredibly slow.
Among the many advantages, remote development allows developers to:
Iterate faster, avoiding the build, push, pull, redeploy cycle.
Eliminate integration issues by developing the same way your application runs in production.
Uninstall Docker or Minikube. No more cpu cycles wasted in your machine.
Hardware and network just limited by the power of the cloud!
Your development endpoints are always available. No need to expose your local machine to the internet through remote tunnels.
How is Okteto different from other tools like Skaffold?
Skaffold automates the workflow for building, pushing and deploying your application. You iterate on your application source code locally and then deploy to local or remote Kubernetes clusters.
Okteto's philosophy, on the other hand, is to move the development entirely to the cloud. The pipeline, even though automated, is still slow. With Okteto you can iterate remotely just like you do locally, without the need to redeploy.
Since your development environment is moved entirely to the cloud. All your dev tools live in a remote environment, nothing is installed locally.
Okteto provides dual synchronization. As an example, you can execute package managers like npm or pip remotely and the changes are synched back to your local file system.
Builds are executed in the cloud, with the CPU power of the cluster. This is particulary useful to speed up very demanding compilations processes.
Okteto is independent of your deployment tools. No matters if you use kubectl, helm or custom scripts.
Deploy and develop your applications for free in our hosted Kubernetes cluster.