Containers
Containers are a way of packaging applications with their dependencies and configuration in a single, runnable package. Containers are similar to virtual machines in that they isolate applications from each other on a shared operating system but different in that containers do not provide hardware-level virtualization as virtual machines do.
Deeper Knowledge on Containers

Kubernetes (k8s)
A system to conduct an orchestra of containers

Docker
A set of tools to build and run containers
Broader Topics Related to Containers

Software Engineering
Engineering approaches to software development