Docker Cheat Sheet: 100 Essential Commands with Examples

Docker 100 Essential Commands with Examples
1. Basic Commands
docker --version
: Check Docker version.Example:
docker --version
Output:
Docker version 24.0.5, build 1234567
docker info
: Display system-wide information.Example:
docker info
docker help
: Show help for Docker commands.Example:
docker help run
docker login
: Log in to a Docker registry.Example:
docker login -u myusername -p mypassword
docker logout
: Log out from a Docker registry.Example:
docker logout
docker version
: Display client and server version details.Example:
docker version
2. Container Management
docker run <image>
: Create and start a new container.Example:
docker run -d -p 80:80 nginx
Creates a detached container running the Nginx image and maps port 80.
docker ps
: List running containers.Example:
docker ps
docker ps -a
: List all containers (including stopped ones).Example:
docker ps -a
docker stop <container>
: Stop a running container.Example:
docker stop my-container
docker start <container>
: Start a stopped container.Example:
docker start my-container
docker restart <container>
: Restart a container.Example:
docker restart my-container
docker rm <container>
: Remove a stopped container.Example:
docker rm my-container
docker kill <container>
: Forcefully stop a container.Example:
docker kill my-container
docker pause <container>
: Pause a container.Example:
docker pause my-container
docker unpause <container>
: Unpause a container.Example:
docker unpause my-container
docker rename <old-name> <new-name>
: Rename a container.Example:
docker rename my-container my-new-container
docker inspect <container>
: View detailed container information.Example:
docker inspect my-container
3. Image Management
docker images
: List all images.Example:
docker images
docker rmi <image>
: Remove an image.Example:
docker rmi my-image
docker tag <source-image> <target-image>
: Tag an image.Example:
docker tag my-image my-repo/my-image:latest
docker build -t <image-name> .
: Build an image from a Dockerfile.Example:
docker build -t my-image .
docker pull <image>
: Pull an image from a registry.Example:
docker pull nginx
docker push <image>
: Push an image to a registry.Example:
docker push my-repo/my-image
docker history <image>
: Show the history of an image.Example:
docker history my-image
docker save -o <file.tar> <image>
: Save an image to a tarball.Example:
docker save -o my-image.tar my-image
docker load -i <file.tar>
: Load an image from a tarball.Example:
docker load -i my-image.tar
docker export <container>
: Export a container's filesystem as a tar archive.Example:
docker export my-container > my-container.tar
docker import <file.tar>
: Import a tar archive to create an image.Example:
docker import my-container.tar my-imported-image
4. Container Interaction
docker exec -it <container> <command>
: Run a command inside a running container.Example:
docker exec -it my-container bash
docker attach <container>
: Attach to a running container.Example:
docker attach my-container
docker logs <container>
: View logs of a container.Example:
docker logs my-container
docker exec <container> pwd
: Print working directory in a container.Example:
docker exec my-container pwd
docker exec <container> ls
: List files in a container.Example:
docker exec my-container ls
docker top <container>
: Display running processes in a container.Example:
docker top my-container
5. Networking Commands
docker network ls
: List all networks.Example:
docker network ls
docker network create <network-name>
: Create a custom network.Example:
docker network create my-network
docker network inspect <network>
: Inspect a network.Example:
docker network inspect my-network
docker network rm <network>
: Remove a network.Example:
docker network rm my-network
docker run --network=<network-name>
: Run a container on a specific network.Example:
docker run -d --network=my-network nginx
docker network connect <network> <container>
: Connect a container to a network.Example:
docker network connect my-network my-container
docker network disconnect <network> <container>
: Disconnect a container from a network.Example:
docker network disconnect my-network my-container
6. Docker Compose Commands
docker-compose up
: Start services defined indocker-compose.yml
.Example:
docker-compose up -d
docker-compose up -d
: Start services in detached mode.Example:
docker-compose up -d
docker-compose down
: Stop and remove containers and networks.Example:
docker-compose down
docker-compose ps
: List running containers managed by Docker Compose.Example:
docker-compose ps
docker-compose logs
: View logs for services.Example:
docker-compose logs -f
docker-compose exec <service> <command>
: Run a command in a running service.Example:
docker-compose exec web /bin/bash
docker-compose build
: Build services from a Dockerfile.Example:
docker-compose build
docker-compose stop
: Stop running services.Example:
docker-compose stop
docker-compose start
: Start stopped services.Example:
docker-compose start
docker-compose restart
: Restart services.Example:
docker-compose restart
docker-compose pull
: Pull images for services.Example:
docker-compose pull
7. Volume Commands
docker volume ls
: List all volumes.Example:
docker volume ls
docker volume create <volume-name>
: Create a volume.Example:
docker volume create my-volume
docker volume inspect <volume>
: Inspect a volume.Example:
docker volume inspect my-volume
docker volume rm <volume>
: Remove a volume.Example:
docker volume rm my-volume
docker run -v <volume-name>:<path>
: Mount a volume to a container.Example:
docker run -d -v my-volume:/data my-container
docker run -v <host-path>:<container-path>
: Bind-mount a host directory to a container.Example:
docker run -d -v /host/data:/container/data my-container
8. Docker System Commands
docker system df
: Display disk usage.Example:
docker system df
docker system prune
: Remove unused data.Example:
docker system prune
docker system prune -a
: Remove all unused images, containers, and networks.Example:
docker system prune -a
docker system events
: Display real-time events from the Docker daemon.Example:
docker system events
docker info --format
: Format the output ofdocker info
.Example:
docker info --format '{{.Containers}} containers are running'
docker update <container>
: Update a container's configuration.Example:
docker update --memory 512m my-container
9. Advanced Docker Commands
docker cp <container>:<path> <host-path>
: Copy files from a container to the host.Example:
docker cp my-container:/app/data.txt /host/data.txt
docker cp <host-path> <container>:<path>
: Copy files from the host to a container.Example:
docker cp /host/data.txt my-container:/app/data.txt
docker stats
: Display real-time statistics of running containers.Example:
docker stats
docker diff <container>
: Show changes made to a container’s filesystem.Example:
docker diff my-container
docker export <container>
: Export the filesystem of a container.Example:
docker export my-container > my-container.tar
docker import <file.tar>
: Import an image from a tar archive.Example:
docker import my-container.tar my-imported-image
docker commit <container> <new-image>
: Create an image from a container's changes.Example:
docker commit my-container my-custom-image
docker update <container>
: Update the resource configuration of a container.Example:
docker update --memory 512m my-container
docker wait <container>
: Block until a container stops, then return its exit code.Example:
docker wait my-container
docker attach <container>
: Attach to a running container’s standard input/output.Example:
docker attach my-container
docker container prune
: Remove all stopped containers.Example:
docker container prune
10. Security and Permissions
docker run --user <UID>
: Run a container as a specific user.Example:
docker run --user 1001 my-container
docker run --privileged
: Run a container in privileged mode.Example:
docker run --privileged my-container
docker login <registry>
: Log in to a specific Docker registry.Example:
docker login my-registry.com
docker trust sign <image>
: Sign an image for content trust.Example:
docker trust sign my-image
docker content trust
: Enable or disable Docker Content Trust.Example:
export DOCKER_CONTENT_TRUST=1
docker scan <image>
: Scan an image for vulnerabilities.Example:
docker scan my-image
11. Troubleshooting Commands
docker inspect <container>
: Inspect detailed container configuration.Example:
docker inspect my-container
docker logs --tail <number> <container>
: Show the last<number>
of lines from a container's logs.Example:
docker logs --tail 10 my-container
docker logs -f <container>
: Stream logs of a container in real-time.Example:
docker logs -f my-container
docker events
: Monitor real-time events from the Docker daemon.Example:
docker events
docker check
: Check system configuration (not an actual command, might bedocker system info
).Example:
docker system info
docker container top <container>
: Show processes running in a container.Example:
edocker container top my-container
docker network disconnect
: Disconnect a container from a network.Example:
docker network disconnect my-network my-container
docker exec -it <container> /bin/bash
: Start a bash shell in a container.Example:
docker exec -it my-container /bin/bash
docker run --rm
: Automatically remove a container when it exits.Example:
docker run --rm my-container
12. Docker Swarm Commands
docker swarm init
: Initialize a Docker swarm.Example:
docker swarm init --advertise-addr 192.168.1.1
docker swarm join
: Join a Docker swarm as a worker or manager.Example:
docker swarm join --token <token> 192.168.1.1:2377
docker swarm leave
: Leave the Docker swarm.Example:
docker swarm leave --force
docker service create
: Create a new service.Example:
docker service create --name my-service --replicas 3 -p 80:80 nginx
docker service ls
: List all services in the swarm.Example:
docker service ls
docker service ps <service>
: List tasks of a service.Example:
docker service ps my-service
docker service update
: Update a service.Example:
docker service update --image nginx:latest my-service
docker stack deploy -c <file> <stack>
: Deploy a stack using a Compose file.Example:
docker stack deploy -c docker-compose.yml my-stack
docker stack rm <stack>
: Remove a Docker stack. - Example:docker stack rm my-stack
These commands cover a wide range of Docker functionalities to help manage containers, images, and networking effectively.
Subscribe to my newsletter
Read articles from Saurabh Namdeo directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by
