DEV Community

Roman
Roman

Posted on • Originally published at romankurnovskii.com

2 1

Docker commands - Cheat Sheet

most popular

docker images                       ##  lists the images
docker pull imagename               ##  Pull an image or a repository from a registry
docker ps -a                        ##  See a list of all containers, even the ones not running
docker build -t imagename .         ##  Create image using this directory's Dockerfile
docker run -p 4000:80 imagename     ##  Run "imagename" mapping port 4000 to 80
docker rmi                          ##  removes the image
docker rm                           ##  removes the container
docker stop                         ##  stops the container
docker volume ls                    ##  lists the volumes
docker kill                         ##  kills the container
docker logs                         ##  see logs
docker inspect                      ##  shows all the info of a container
Enter fullscreen mode Exit fullscreen mode

Some daily docker code snippets

docker

docker cp                                   ##  Copy files/folders between a container and the local filesystem
docker pull imagename                       ##  Pull an image or a repository from a registry
docker build -t imagename .                 ##  Create image using this directory's Dockerfile
docker run -p 4000:80 imagename             ##  Run "imagename" mapping port 4000 to 80
docker run -d -p 4000:80 imagename          ##  Same thing, but in detached mode
docker exec -it [container-id] bash         ##  Enter a running container
docker ps                                   ##  See a list of all running containers
docker stop <hash>                          ##  Gracefully stop the specified container
docker ps -a                                ##  See a list of all containers, even the ones not running
docker kill <hash>                          ##  Force shutdown of the specified container
docker rm <hash>                            ##  Remove the specified container from this machine
docker rm -f <hash>                         ##  Remove force specified container from this machine
docker rm $(docker ps -a -q)                ##  Remove all containers from this machine
docker images -a                            ##  Show all images on this machine
docker rmi <imagename>                      ##  Remove the specified image from this machine
docker rmi $(docker images -q)              ##  Remove all images from this machine
docker top  <container-id>                  ##  Display the running processes of a container
docker logs <container-id> -f               ##  Live tail a container's logs
docker login                                ##  Log in this CLI session using your Docker credentials
docker tag <image> username/repository:tag  ##  Tag <image> for upload to registry
docker push username/repository:tag         ##  Upload tagged image to registry
docker run username/repository:tag          ##  Run image from a registry
docker system prune                         ##  Remove all unused containers, networks, images (both dangling and unreferenced), and optionally, volumes. (Docker 17.06.1-ce and superior)
docker system prune -a                      ##  Remove all unused containers, networks, images not just dangling ones (Docker 17.06.1-ce and superior)
docker volume prune                         ##  Remove all unused local volumes
docker network prune                        ##  Remove all unused networks
Enter fullscreen mode Exit fullscreen mode

docker compose

docker-compose up                               # Create and start containers
docker-compose up -d                            # Create and start containers in detached mode
docker-compose down                             # Stop and remove containers, networks, images, and volumes
docker-compose logs                             # View output from containers
docker-compose restart                          # Restart all service
docker-compose pull                             # Pull all image service 
docker-compose build                            # Build all image service
docker-compose config                           # Validate and view the Compose file
docker-compose scale <service_name>=<replica>   # Scale special service(s)
docker-compose top                              # Display the running processes
docker-compose run -rm -p 2022:22 web bash      # Start web service and runs bash as its command, remove old container.
Enter fullscreen mode Exit fullscreen mode

docker services

docker service create <options> <image> <command>   # Create new service
docker service inspect --pretty <service_name>      # Display detailed information Service(s)
docker service ls                                   # List Services
docker service ps                                   # List the tasks of Services
docker service scale <service_name>=<replica>       # Scale special service(s)
docker service update <options> <service_name>      # Update Service options
Enter fullscreen mode Exit fullscreen mode

docker stack

docker stack ls                                 # List all running applications on this Docker host
docker stack deploy -c <composefile> <appname>  # Run the specified Compose file
docker stack services <appname>                 # List the services associated with an app
docker stack ps <appname>                       # List the running containers associated with an app
docker stack rm <appname>                       # Tear down an application
Enter fullscreen mode Exit fullscreen mode

docker machine

docker-machine create --driver virtualbox myvm1                           # Create a VM (Mac, Win7, Linux)
docker-machine create -d hyperv --hyperv-virtual-switch "myswitch" myvm1  # Win10
docker-machine env myvm1                                                  # View basic information about your node
docker-machine ssh myvm1 "docker node ls"                                 # List the nodes in your swarm
docker-machine ssh myvm1 "docker node inspect <node ID>"                  # Inspect a node
docker-machine ssh myvm1 "docker swarm join-token -q worker"              # View join token
docker-machine ssh myvm1                                                  # Open an SSH session with the VM; type "exit" to end
docker-machine ssh myvm2 "docker swarm leave"                             # Make the worker leave the swarm
docker-machine ssh myvm1 "docker swarm leave -f"                          # Make master leave, kill swarm
docker-machine start myvm1                                                # Start a VM that is currently not running
docker-machine stop $(docker-machine ls -q)                               # Stop all running VMs
docker-machine rm $(docker-machine ls -q)                                 # Delete all VMs and their disk images
docker-machine scp docker-compose.yml myvm1:~                             # Copy file to node's home dir
docker-machine ssh myvm1 "docker stack deploy -c <file> <app>"            # Deploy an app
Enter fullscreen mode Exit fullscreen mode

Some more Docker code snippets

Heroku

This site is built on Heroku

Join the ranks of developers at Salesforce, Airbase, DEV, and more who deploy their mission critical applications on Heroku. Sign up today and launch your first app!

Get Started

Top comments (0)

A Workflow Copilot. Tailored to You.

Pieces.app image

Our desktop app, with its intelligent copilot, streamlines coding by generating snippets, extracting code from screenshots, and accelerating problem-solving.

Read the docs