What is Docker?
Docker is a tool used to deploy and run applications. Docker uses OS-level virtualization to deliver software in a package called the container. Containers are isolated from one another and bundle their own software, libraries and configuration files as required. Containers can communicate with each other through proper configurations (network etc).
With docker applications use the same Linux kernel as the system where docker is running and only requires the application to be shipped with dependencies that are not available on the host computer. This gives a significant performance boost and reduces the size of the application to be shipped.
Where to find Docker?
Docker community edition can be downloaded from here: https://hub.docker.com/search?q=&type=edition&offering=community
Keywords related to Docker
Docker Hub: Docker Hub is a registry service on the cloud that allows you to download Docker images that are built by other communities. You can also upload your own Docker built images to Docker hub.
Docker Image: Docker image is a file which comprised of multiple layers, that is used to run the application in a Docker container. An image is essentially built from the instructions for a complete and executable version of an application, which relies on the host OS kernel.
Docker Container: Docker Containers are instances of Docker images that hosts the running application.
How to use Docker?
Below are some of the most common commands used in docker:
Command to list all containers
docker ps -a
Command to list running containers
Command to list all images available in the system
Command to run the image as a container
docker run image
Command to remove an image
docker rmi ImageID
Command to stop a container
docker stop my_container
Alternative to Docker
Few products which can be alternative to Docker are CoreOS rkt and LXC Linux Containers