Docker Cheat Sheet: All the
Most Essential Commands
in One Place +
Downloadable PDF
Docker is a popular open-source platform that makes it easy to build,
test, deploy, and manage containerized applications in a consistent,
portable, or virtual environment such as VPS.
While a powerful tool in your development arsenal, learning the different
Docker commands can take time and effort. New users often benefit
from having a Docker cheat sheet readily at hand.
In this tutorial, we will explain how Docker works and provide the most
common Docker commands, along with a downloadable cheat sheet for
you to use.
o Download a Docker Cheat Sheet
o Docker Architecture
o Docker Commands Cheat Sheet
o Build Commands
o Clean Up Commands
o Container Interaction Commands
o Container Inspection Commands
o Manage Images Commands
o Run Commands
o Registry Commands
o Service Commands
o Network Commands
Docker Architecture
Docker architecture consists of five main components: server, client,
container, image, and registry.
Docker Server
A Docker server or Docker daemon is a program that runs in the
background of your computer and manages Docker containers and
images. When you use the Docker command line interface.
(CLI) to create, run, or manage containers, you interact with the Docker
daemon.
The Docker daemon is an essential platform component that ensures
containers can be started and stopped automatically when the system
boots up.
Docker Client
The Docker client lets users interact with the Docker daemon with its
command-line interface (CLI). In simple terms, it’s the main part of the
Docker architecture for creating, managing, and running container
applications.
When you use the Docker CLI to pass a command, the Docker client
sends the command to the Docker daemon running on your computer,
which then carries out the requested operation. The Docker client can
be installed on any machine that needs to interact with the Docker
daemon, including your local machine, a remote server, or a virtual
server.
Docker Container
A Docker container is a package that contains all the required
prerequisites to run an application.
Containers are designed to be highly portable, meaning that they can be
easily moved from one environment to another, such as from a
developer’s laptop to a testing environment or from a testing
environment to a production environment.
Docker Image
A Docker image is a preconfigured template that specifies what should
be included in a Docker container. Usually, images are downloaded from
websites like Docker Hub. However, it’s also possible to create a
custom image with the help of Dockerfile.
Docker Registry
The Docker registry is a central repository that stores and manages
Docker images. It is a server-based system that lets users store and
share Docker images with others, making it easy to distribute and
deploy applications. The most notable Docker registry is Docker Hub.
Docker Commands Cheat Sheet
Now that you know how Docker functions, let’s look at some of the most
popular Docker command examples.
Build Commands
Docker uses the build command for building images from a Docker file.
Some of the most common commands include:
Command Explanation
Builds an image from a Dockerfile in the
docker build
current directory
docker build https://github.com/docker/ Builds an image from a remote GIT
rootfs.git#container:docker repository
docker build -t imagename/tag Builds and tags an image for easier tracking
docker build https://yourserver/file.tar.gz Builds an image from a remote tar archive
docker build -t image:1.0
Builds an image via a Dockerfile that is
-<<EOFFROM busyboxRUN echo “hello
passed through STDIN
world”EOF
Clean Up Commands
To keep your system clean and save disk space, it’s a great idea to
clean up unused images, containers, and volumes. Check the
commands below for more details:
Command Explanation
docker image prune Clears an unused image
docker image prune -a Clears all images that are not being used by containers
Removes all stopped containers, all networks not used by
docker system prune
containers, all dangling images, and all build cache
docker image rm image Removes an image
docker rm container Removes a running container
docker swarm leave Leaves a swarm
docker stack rm stackname Removes a swarm
docker volume rm $(docker volume
Removes all dangling volumes
ls -f dangling=true -q)
docker rm $(docker ps -a -q) Removes all stopped containers
docker kill $ (docker ps -q) Stops all running containers
Container Interaction Commands
Interact with your Docker container with the following common
commands:
Command Explanation
docker start container Starts a new container
docker stop container Stops a container
docker pause container Pauses a container
docker unpause container Unpauses a container
docker restart container Restarts a container
docker wait container Blocks a container
Exports container contents to a tar
docker export container
archive
docker attach container Attaches to a running container
Waits until the container is
docker wait container
terminated and shows the exit code
docker commit -m “commit message” -a “author” Saves a running container as an
container username/image_name: tag image
docker logs -ft container Follows container logs
docker exec -ti container script.sh Runs a command in a container
docker commit container image Creates a new image from a container
Creates a new container from an
docker create image
image
Container Inspection Commands
Sometimes, you need to inspect your containers for quality assurance or
troubleshooting purposes. These commands help you get an overview of
what different containers are doing:
Command Explanation
docker ps Lists all running containers
docker -ps -a Lists all containers
docker diff container Inspects changes to directories and files in the container filesystem
docker top container Shows all running processes in an existing container
docker inspect container Displays low-level information about a container
docker logs container Gathers the logs for a container
docker stats container Shows container resource usage statistics
Manage Images Commands
Some of the most common image management commands include:
Command Explanation
docker image ls Lists images
docker image rm mysql Removes an image
docker tag image tag Tags an image
docker history image Displays the image history
docker inspect image Displays low-level information about an image
Run Commands
Docker uses the run command to create containers from provided
images. The default syntax for this command looks like this:
docker run (options) image (command) (arg...)
After the default syntax, use one of the following flags:
Flag Explanation
--detach , -d Runs a container in the background and prints the container ID
--env , -e Sets environment variables
--hostname , -h Sets a hostname to a container
--label , -l Creates a meta data label for a container
--name Assigns a name to a container
--network Connects a container to a network
--rm Removes container when it stops
--read-only Sets the container filesystem as read-only
--workdir , -w Sets a working directory in a container
Registry Commands
If you need to interact with Docker Hub, use the following commands:
Command Explanation
docker login Logs in to a registry
docker logout Logs out from a registry
docker pull mysql Pulls an image from a registry
docker push repo/ rhel-httpd:latest Pushes an image to a registry
docker search term Searches Docker Hub for images with the specified term
Service Commands
Manage all Docker services with these basic commands:
Command Explanation
docker service ls Lists all services running in a swarm
docker stack services stackname Lists all running services
docker service ps servicename Lists the tasks of a service
docker service update servicename Updates a service
docker service create image Creates a new service
docker service scale servicename=10 Scales one or more replicated services
docker service logs stackname servicename Lists all service logs
Network Commands
If you need to interact with the Docker network, use one of the following
commands:
Command Explanation
docker network create networkname Creates a new network
docker network rm networkname Removes a specified network
docker network ls Lists all networks
docker network connect networkname container Connects a container to a network
docker network disconnect networkname container Disconnects a container from a network
Displays detailed information about a
docker network inspect networkname
network
Suggested Readings
Check out our other Docker tutorials
How to Install Docker on Ubuntu
How to Remove All Docker Images
How to Install WordPress on Docker
How to Create a Docker Container
Conclusion
Docker is a great tool for anyone willing to try out containers. The
learning curve can be steep if you’re unfamiliar with container-based
development. Luckily, having a cheat sheet at hand can speed up the
process, as all common commands are easily reachable, and you don’t
need to look them up on the internet.
In this tutorial, we’ve covered the basics of Docker architecture and
gone through all the basic Docker commands, all of which can be found
in our downloadable Docker cheat sheet.
We hope that you found this Docker tutorial useful. If you have any
questions, leave them in the comments section below.