https://gist.github.com/garystafford/f0bd5f696399d4d7df0f

  
  
docker exec -it $(docker container ls | grep 'pattern' | awk '{print $1}') bin/bash  
  
docker ps -a --no-trunc  | grep 'pattern' | awk '{print $1}' | xargs -r --no-run-if-empty docker rm  
  
docker images -a | grep 'pattern' | awk '{print $3}' | xargs docker rmi  
  

  
###############################################################################  
# Helpful Docker commands and code snippets  
###############################################################################  
  
### CONTAINERS ###  
docker stop $(docker ps -a -q) #stop ALL containers  
docker rm -f $(docker ps -a -q) # remove ALL containers  
docker rm -f $(sudo docker ps --before="container_id_here" -q) # can also filter  
  
# exec into container  
docker exec -it $(docker container ls  | grep '' | awk '{print $1}') sh  
# exec into container on windows with Git Bash  
winpty docker exec -it $(docker container ls  | grep '' | awk '{print $1}') sh  
  
# helps with error: 'unexpected end of JSON input'  
docker rm -f $(docker ps -a -q) # Remove all in one command with --force  
docker exec -i -t "container_name_here" /bin/bash # Go to container command line  
  
# to exit above use 'ctrl p', 'ctrl q' (don't exit or it will be in exited state)  
docker rm $(docker ps -q -f status=exited) # remove all exited containers  
  
### IMAGES ###  
# list images and containers  
docker images | grep "search_term_here"  
  
# remove image(s) (must remove associated containers first)  
docker rmi -f image_id_here # remove image(s)  
docker rmi -f $(docker images -q) # remove ALL images!!!  
docker rmi -f $(docker images | grep "^" | awk '{print $3}') # remove all  images  
docker rmi -f $(docker images | grep 'search_term_here' | awk '{print $1}') # i.e. 2 days ago  
docker rmi -f $(docker images | grep 'search_1\|search_2' | awk '{print $1}')  
  
### DELETE BOTH IMAGES AND CONTAINERS ###  
docker images && docker ps -a  
# stop and remove containers and associated images with common grep search term  
docker ps -a --no-trunc  | grep "search_term_here" | awk "{print $1}" | xargs -r --no-run-if-empty docker stop && \  
docker ps -a --no-trunc  | grep "search_term_here" | awk "{print $1}" | xargs -r --no-run-if-empty docker rm && \  
docker images --no-trunc | grep "search_term_here" | awk "{print $3}" | xargs -r --no-run-if-empty docker rmi  
  
# stops only exited containers and delete only non-tagged images  
docker ps --filter 'status=Exited' -a | xargs docker stop docker images --filter "dangling=true" -q | xargs docker rmi  
  
### DELETE NETWORKS AND VOLUMES ###  
# clean up orphaned volumes  
docker volume rm $(docker volume ls -qf dangling=true)  
  
# clean up orphaned networks  
docker network rm $(docker network ls -q)  
  
### NEW IMAGES/CONTAINERS ###  
# create new docker container, ie. ubuntu  
docker pull ubuntu:latest # 1x pull down image  
docker run -i -t ubuntu /bin/bash # drops you into new container as root  
  
### OTHER ###  
# install docker first using directions for installing latest version  
# https://docs.docker.com/installation/ubuntulinux/#ubuntu-trusty-1404-lts-64-bit  
  
# other great tips: http://www.centurylinklabs.com/15-quick-docker-tips/  
# fix fig / docker config: https://gist.github.com/RuslanHamidullin/94d95328a7360d843e52