Containers are the operating system level virtualization where the virtual layer runs as an application within one OS hence using the same kernel. There is no need to invest in extra servers and infrastructure to deploy the applications.
These containers have their own process and network space, however the security isn’t as good as other operating system level virtualization technology such as OpenVZ.
Docker is an open source Linux tool that can easily and efficiently create and manage containers. Docker can be easily integrated with different infrastructures like Google Cloud Platform, Microsoft Azure, Amazon Web Services, Kubernetes, Oracle Container Cloud Service, Puppet, Ansible, Chef, Jenkins, OpenStack, Salt and Vagrant.