Docker Cheat Sheet
Posted on Oct 20, 2017 (last modified Dec 21, 2021)
My cheat sheet of commonly used docker commands.
List all containers
docker ps --all
or...
docker ps -a
Remove all containers and images
Here are the two Docker commands you can run in sequence to completely remove (delete) all of your containers and images.
To remove all containers:
docker rm $(docker ps -a -q)
To remove all images:
docker rmi $(docker images -q)
Warning: Executing the commands shown above will destroy all your containers and images; it will not be possible to restore them.
List images
docker images
Remove an image
docker rmi <image-id>
Warning: Executing the commands shown above will destroy the given image; it will not be possible to restore it.
Container shell access
The docker exec
command allows you to run commands inside a Docker container. The following command line will give you a bash shell inside your container:
docker exec -it <container-name> bash
If the container does not have bash installed you can use the following as an alternative:
docker exec -it <container-name> sh
For container shell access with root privileges, you can run the following command:
docker exec -ti -u root <container-name> bash
Type exit
to exit out of the container and return to your host shell.
List ports
The port
command can be used to display the ports that are exposed by a given container.
docker port <container-name>
List processes
To see the processes running in a container, you can use the top
command (similar to running the Linux top command):
docker top <container-name>
View container log file
docker logs <container-name>
Follow container log file
docker logs --follow <container-name>
or...
docker logs -f <container-name>
Restart a running container
docker restart
Stop all running containers
docker stop $(docker ps -a -q)
Inspect container information
docker inspect <container-name-or-id>
This returns verbose information about the container in JSON format.
You can zero in on a particular attribute using the f parameter. The following, for example, will print only the Mounts section of the container information that would otherwise be found in the whole JSON print.
docker inspect -f '{{ .Mounts }}' <container-name-or-id>