Docker Cheatsheet

Docker commands that developers should know

Featured on
Docker Cheatsheet

Docker is an open platform for developing, shipping, and running applications. Docker enables you to separate your applications from your infrastructure so you can deliver software quickly. With Docker, you can manage your infrastructure in the same ways you manage your applications. By taking advantage of Docker’s methodologies for shipping, testing, and deploying code quickly, you can significantly reduce the delay between writing code and running it in production. In this post, I will mention docker commands which we need or most of the use-cases.

Lifecycle Commands

  • Create a container (without starting it):

    docker create [IMAGE]
  • Rename an existing container

  • Run a command in a new container

    docker run [IMAGE] [COMMAND]
  • Remove container after it exits

    docker run --rm [IMAGE]
  • Start a container and keep it running

    docker run -td [IMAGE]
  • Start a container and creates an interactive bash shell in the container

    docker run -it [IMAGE]
  • Create, Start, and run a command inside the container and remove the container after executing command.

    docker run -it-rm [IMAGE]
  • Execute command inside already running container.

    docker exec -it [container]
  • Delete a container (if it is not running)

    docker rm [CONTAINER]
  • Update the configuration of the container

    docker update [CONTAINER]

Starting and Stopping Containers

  • Start Container

    docker start [CONTAINER]
  • Stop running Container

    docker stop [CONTAINER]
  • Stop running Container and start it again

    docker restart [CONTAINER]
  • Pause processes in a running container

    docker pause [CONTAINER]
  • Unpause processes in a running container

    docker unpause [CONTAINER]
  • Block a container until others stop

    docker wait [CONTAINER]
  • Kill a container by sending a SIGKILL to a running container

    docker kill [CONTAINER]
  • Attach local standard input, output, and error streams to a running container

    docker attach [CONTAINER]

Docker Image Commands

  • Create an image from a Dockerfile

    docker build [URL/FILE]
  • Create an image from a Dockerfile with Tags

    docker build -t <tag> [URL/FILE]
  • Pull an image from a registry

    docker pull [IMAGE]
  • Push an image to a registry

    docker push [IMAGE]
  • Create an image from a tarball

    docker import [URL/FILE]
  • Create an image from a container

    docker commit [CONTAINER] [NEW_IMAGE_NAME]
  • Remove an image

    docker rmi [IMAGE]
  • Load an image from a tar archive or stdin

    docker load [TAR_FILE/STDIN_FILE]
  • Save an image to a tar archive

    docker save [IMAGE] > [TAR_FILE]

Docker Container And Image Information

  • List running containers

    docker ps
  • Lists both running containers and ones that have stopped

    docker ps -a
  • List the logs from a running container

    docker logs [CONTAINER]
  • List low-level information on Docker objects

    docker inspect [OBJECT_NAME/ID]
  • List real-time events from a container

    docker events [CONTAINER]
  • Show port mapping for a container

    docker port [CONTAINER]
  • Show running processes in a container

    docker top [CONTAINER]
  • Show live resource usage statistics of container

    docker stats [CONTAINER]
  • Show changes to files (or directories) on a filesystem

    docker diff [CONTAINER]
  • List all images that are locally stored with the docker engine

    docker [image] ls
  • Show the history of an image

    docker history [IMAGE]

Network Commands

  • List networks

    docker network ls
  • Remove one or more networks

    docker network rm [NETWORK]
  • Show information on one or more networks

    docker network inspect [NETWORK]
  • Connects a container to a network

    docker network connect [NETWORK] [CONTAINER]
  • Disconnect a container from a network

    docker network disconnect [NETWORK] [CONTAINER]

Thank you for reading

Hope you find these resources useful. If you like what you read and want to see more about system design, microservices, and other technology-related stuff... You can follow me on

Did you find this article valuable?

Support vishnu chilamakuru by becoming a sponsor. Any amount is appreciated!