Docker is software that can be installed on any computer to run containerized applications, allowing users to run, create, and manage containers on a single OS. If you have docker installed in multiple hosts, Kubernetes allows for automation of container provisioning, networking, load-balancing, security, and scaling across all nodes from a single dashboard or command line. Multiple nodes allow for:
Kubernetes can work with any containerization technology, two of the most popular ones being Docker and rkt. However, Docker is more popular which has led to more integration between the two. Docker also has its own container orchestration engine, Docker Swarm, but still has its own Kubernetes distribution.
Thus, when used together, Docker allows for the creation of containers while Kubernetes is an orchestration platform that can be used to automate container processes.