Docker Cheat Sheet
Helpful Docker commands to reference as a cheat sheet
Running Containers
COMMAND | DESCRIPTION |
---|---|
docker run <image> |
Start a new container from an image |
docker run -it <image> |
Start a new container in interactive mode |
docker run --rm <image> |
Start a new container and remove it when it exits |
docker create <image> |
Create a new container |
docker start <container> |
Start a container |
docker stop <container> |
Graceful stop a container |
docker kill <container> |
Kill (SIGKILL) a container |
docker restart <container> |
Graceful stop and restart a container |
docker pause <container> |
Suspend a container |
docker unpause <container> |
Resume a container |
docker rm <container> |
Destroy a container |
Container Bulk Management
COMMAND | DESCRIPTION |
---|---|
docker stop $(docker ps -q) |
To stop all the running containers |
docker stop $(docker ps -a -q) |
To stop all the stopped and running containers |
docker kill $(docker ps -q) |
To kill all the running containers |
docker kill $(docker ps -a -q) |
To kill all the stopped and running containers |
docker restart $(docker ps -q) |
To restart all running containers |
docker restart $(docker ps -a -q) |
To restart all the stopped and running containers |
docker rm $(docker ps -q) |
To destroy all running containers |
docker rm $(docker ps -a -q) |
To destroy all the stopped and running containers |
docker pause $(docker ps -q) |
To pause all running containers |
docker pause $(docker ps -a -q) |
To pause all the stopped and running containers |
docker start $(docker ps -q) |
To start all running containers |
docker start $(docker ps -a -q) |
To start all the stopped and running containers |
docker rm -vf $(docker ps -a -q) |
To delete all containers including its volumes use |
docker rmi -f $(docker images -a -q) |
To delete all the images |
docker system prune |
To delete all dangling and unused images, containers, cache and volumes |
docker system prune -a |
To delete all used and unused images |
docker system prune --volumes |
To delete all docker volumes |
Inspect Containers
COMMAND | DESCRIPTION |
---|---|
docker ps |
List running containers |
docker ps --all |
List all containers, including stopped |
docker logs <container> |
Show a container output |
docker logs -f <container> |
Follow a container output |
docker top <container> |
List the processes running in a container |
docker diff |
Show the differences with the image (modified files) |
docker inspect |
Show information of a container (json formatted) |
Executing Commands
COMMAND | DESCRIPTION |
---|---|
docker attach <container> |
Attach to a container |
docker cp <container>:<container-path> <host-path> |
Copy files from the container |
docker cp <host-path> <container>:<container-path> |
Copy files into the container |
docker export <container> |
Export the content of the container (tar archive) |
docker exec <container> |
Run a command inside a container |
docker exec -it <container> /bin/bash |
Open an interactive shell inside a container (there is no bash in some images, use /bin/sh) |
docker wait <container> |
Wait until the container terminates and return the exit code |
Images
COMMAND | DESCRIPTION |
---|---|
docker image ls |
List all local images |
docker history <image> |
Show the image history |
docker inspect <image> |
Show information (json formatted) |
docker tag <image> <tag> |
Tag an image |
docker commit <container> <image> |
Create an image (from a container) |
docker import <url> |
Create an image (from a tarball) |
docker rmi <image> |
Delete images |
docker pull <user>/<repository>:<tag> |
Pull an image from a registry |
docker push <user>/<repository>:<tag> |
Push and image to a registry |
docker search <test> |
Search an image on the official registry |
docker login |
Login to a registry |
docker logout |
Logout from a registry |
docker save <user>/<repository>:<tag> |
Export an image/repo as a tarball |
docker load |
Load images from a tarball |
Volumes
COMMAND | DESCRIPTION |
---|---|
docker volume ls |
List all vol1umes |
docker volume create <volume> |
Create a volume |
docker volume inspect <volume> |
Show information (json formatted) |
docker volume rm <volume> |
Destroy a volume |
docker volume ls --filter="dangling=true" |
List all dangling volumes (not referenced by any container) |
docker volume prune |
Delete all volumes (not referenced by any container) |
docker run --rm --volumes-from <container> -v $(pwd):/backup busybox tar cvfz /backup/backup.tar <container-path> |
Backup a container |
docker run --rm --volumes-from <container> -v $(pwd):/backup busybox sh -c "cd <container-path> && tar xvf /backup/backup.tar --strip 1" |
Restore a container from backup |
This post is licensed under
CC BY 4.0
by the author.