Docker is software that helps in creating a light weight environment managed by kernel for developing or running application
Container is a kind of environment created by docker that has separate resources like root file system, pid system and network of its own.
Docker helps in setting up the containers wherein the application resides and can be interacted with. Its similar to the capabilities in hypervisor of Virtual Machines.
Docker has commands to create, start, stop, pause, unpause, kill and remove the containers running in it.
Container creates its on libraries and dependencies based on the configurations in an isolated manner acting like a virtual operating system
Docker Engine(includes both the docker server as well as the docker client), docker images, docker container and docker registry