1. Docker allows creating lightweight virtual environments called containers that package code and dependencies together. Containers are more portable than virtual machines.
2. Docker uses images to build containers. Images are immutable templates and containers are instances of images that can be run. The Dockerfile defines how to build images.
3. Common Docker commands include docker pull to download images, docker run to create and start containers, docker exec to run commands in running containers, and docker commit to save container changes as new images.