DEV Community

Cover image for Top 20 Docker Commands with Examples and Outputs
Ömer Berat Sezer
Ömer Berat Sezer

Posted on • Edited on

Top 20 Docker Commands with Examples and Outputs

Docker commands are essential for managing containerized applications, enabling developers to create, run, and manage containers efficiently. They allow for consistent environments across development, testing, and production, ensuring reliable deployment and scalability. Mastery of these commands simplifies workflow automation and boosts productivity in DevOps practices.

Docker

Important Docker commands with their outputs:

docker pull

  • downloads an image from Docker registry
user@docker:$ docker pull nginx:latest # download latest tag
Using default tag: latest
latest: Pulling from library/nginx
a480a496ba95: Pull complete
Digest: sha256:28402db69fec7c17e179ea87882667
Status: Downloaded newer image for nginx:latest
docker.o/library/nginx:latest
Enter fullscreen mode Exit fullscreen mode

docker run

  • runs a container from an image
user@docker:$ docker run -d -p 8080:80 nginx:latest
# -d => run in detach mode (background)
# -p => publish port  <host>:<container>
8f9f97dc08ffddb173ebe61eaa871b2944
Enter fullscreen mode Exit fullscreen mode

docker ps

  • lists all running containers
user@docker:$ docker ps
user@docker:$ docker ps -a
CONTAINER ID  IMAGE               COMMAND                     CREATED            STATUS                      
8f9f97dc08ff     nginx:latest     "/docker-entrypoint"   2 minutes ago   Up 2 minutes 
Enter fullscreen mode Exit fullscreen mode

docker images

  • lists all downloaded images
user@docker:$ docker images
REPOSITORY      TAG        IMAGE ID            CREATED             SIZE
nginx                     latest     3b25b682ea82   4 weeks ago     192MB
Enter fullscreen mode Exit fullscreen mode

docker rm

  • removes a stopped container
user@docker:$ docker container rm -f my_container
8f9
user@docker:$ docker image rm -f nginx            # force to delete image
Untagged: nginx:latest
Untagged: nginx@sha256:28402db69fec7c17e179ea8788266
Deleted: sha256:3b25b682ea82b2db3cc4fd48db818be788ee
Deleted: sha256:3e8a4396bcdb62aeb916ec1e4cf645000380
Enter fullscreen mode Exit fullscreen mode

docker rmi

  • removes a specific image
user@docker:$ docker rmi nginx
Untagged: nginx:latest
Untagged: nginx@sha256:28402db69fec7c17e179ea8788266
Deleted: sha256:3b25b682ea82b2db3cc4fd48db818be788ee
Deleted: sha256:3e8a4396bcdb62aeb916ec1e4cf645000380
Enter fullscreen mode Exit fullscreen mode

docker exec

  • runs a command inside a running container
user@docker:$ docker exec -it my_container bash
user@docker:$ docker exec -it my_container bin/sh
# pwd
/
# read escape sequence      # CTRL + P + Q => go to host
user@docker:$
Enter fullscreen mode Exit fullscreen mode

docker build

  • builds an image from a Dockerfile
user@docker:$ docker build -t myapp .    
# if Dockerfile in the same directory
user@docker:$ docker build -t myapp -f /other-directory/Dockerfile .
# if Dockerfile in the different directory path
Enter fullscreen mode Exit fullscreen mode

docker logs

  • shows logs from a container
user@docker:$ docker logs my_container
2024/11/01 21:20:08 [notice] 1#1: nginx/1.27.2
2024/11/01 21:20:08 [notice] 1#1: built by gcc 12.2.0 (Debian 12.2.0-14)
2024/11/01 21:20:08 [notice] 1#1: OS: Linux 5.10.60.1
Enter fullscreen mode Exit fullscreen mode

docker network ls

  • lists all networks
user@docker:$ docker network ls
NETWORK ID     NAME        DRIVER    SCOPE
19cb6e2b2cab   bridge       bridge    local
8ab407104066   host           host      local
67944d3050a3   none          null      local
Enter fullscreen mode Exit fullscreen mode

docker volume ls

  • lists all volumes
user@docker:$ docker volume ls
DRIVER    VOLUME NAME
local          3a243556537e4e11
local          myvolume
Enter fullscreen mode Exit fullscreen mode

docker login

  • login dockerhub or docker registry
user@docker:$ docker login
Login with your Docker ID to push and pull images from Docker Hub.
Username:
Password:
Enter fullscreen mode Exit fullscreen mode

docker tag

  • creates a new tag for an image, useful for renaming or versioning
user@docker:$ docker tag nginx:latest my_nginx:latest
REPOSITORY    TAG            IMAGE ID                CREATED           SIZE
my_nginx           latest        3b25b682ea82      4 weeks ago     192MB
nginx                   latest        3b25b682ea82      4 weeks ago     192MB
Enter fullscreen mode Exit fullscreen mode

docker push

  • uploads an image to Docker Hub or another Docker registry
user@docker:$ docker push <my_username>/my_nginx
The push refers to repository [docker.io/<my_username>/my_nginx]
e4e9e9ad93c2: Mounted from library/nginx
latest: digest: sha256:7ba542bde95e6523a4b126f610 size: 1778
Enter fullscreen mode Exit fullscreen mode

docker save

  • saves a Docker image as a .tar archive
user@docker:$ docker save -o <imageName>.tar  <imageName>
user@docker:$ docker save -o my_nginx.tar my_nginx
user@docker:$  ls
my_nginx.tar
Enter fullscreen mode Exit fullscreen mode

docker load

  • loads an image from a .tar archive
user@docker:$ docker load -i my_image.tar
user@docker:$ docker load -i my_nginx.tar
Loaded image: my_nginx:latest
Enter fullscreen mode Exit fullscreen mode

docker stats

  • displays real-time resource usage statistics for containers
user@docker:$ docker stats
CONTAINER ID   NAME      CPU %     MEM USAGE / LIMIT   MEM %     NET I/O   BLOCK I/O   PIDS
Enter fullscreen mode Exit fullscreen mode

docker-compose up

  • starts and runs all services defined in a docker-compose.yml file
user@docker:$ docker-compose up -d      
# -d => run detach mode, background
Enter fullscreen mode Exit fullscreen mode

docker-compose down

  • stops and removes all services and networks created by docker-compose up
user@docker:$ docker-compose down
Enter fullscreen mode Exit fullscreen mode

docker system prune

  • cleans up unused containers, images, networks, and volumes
user@docker:$ docker system prune
user@docker:$ docker system prune -a
WARNING! This will remove:
  - all stopped containers
  - all networks not used by at least one container
  - all images without at least one container associated to them
  - all build cache
Are you sure you want to continue? [y/N] y
Deleted Containers: 94eabb9dd32f55061bc3d6
Enter fullscreen mode Exit fullscreen mode

Conclusion

We run and saw the 20 Important Docker commands with their outputs in the shell. These commands always help you while creating, debugging, implementing.

If you found the tutorial interesting, I’d love to hear your thoughts in the blog post comments. Feel free to share your reactions or leave a comment. I truly value your input and engagement 😉

Follow for Tips, Tutorials, Hands-On Labs for AWS, Kubernetes, Docker, Linux, DevOps, Ansible, Machine Learning, Generative AI, SAAS.

https://github.com/omerbsezer/
https://www.linkedin.com/in/omerberatsezer/

Top comments (0)