I agree. The story is that Kubernetes has 'won' but I still love the simplicity of Docker Swarm. And I would definitely recommend anyone to start with it and maybe later, if you have hundreds or thousands of nodes, migrate to k8s.
I also recommend starting with Swarm (not necessarily going to production) and then learning k8s next. This is the path I am taking. Kubernetes is different in surprising ways, but it helps to already have the basic concepts down by learning Swarm.
one thing i need to point out is: swarm intentionally ship many features conflict with kubernetes in order to compete with it, then it failed, and leaves migrations somehow impossible. so if u only have small cluster and love swarm thing and does not need more mature orchestrations level, just keep it. but recommendng others jump in this hole is definitely Irresponsible.
I learned first-hand that migrations are difficult. Do not go to production with Swarm if you are thinking of migrating to k8s. Use it for experimentation and learning.
I respectfully disagree. If you move your existing stack to Docker Swarm, by far most of the work is in containerization. Creating Dockerfiles, decoding how containers interact, deciding on environment variables, deployment mechanisms etcetera.
When moving to Kubernetes the same thing happens: most of the work goes to those same activities. That work is not lost if you defer moving to k8s to later. And that move itself will be so easy compared to the containerization.
So, in most cases yo don't need k8s? :)
Indeed. Looking at simplicity, I'd say Docker Swarm compares to k8s as Digital Ocean to AWS.