Kubernetes has been used in production for more than 15 years while Docker Swarm mode was introduced about a year ago. But, Docker Swarm mode has some advantages over Kubernetes:
1. Docker Swarm mode is Docker-native, which implies not external software needs to be installed.
2. Docker Swarm mode supports Docker Service Stacks for developing microservices that have dependencies between them.
3. A managed service for Docker, 'Docker for AWS', is available, but a similar Kubernetes for AWS is not available.
4. Docker has added support for Kubernetes. "The Docker platform is getting support for Kubernetes. This means that developers and operators can build apps with Docker and seamlessly
test and deploy them using both Docker Swarm and Kubernetes."