Skip to content

Instantly share code, notes, and snippets.

@carloscasalar
Last active February 11, 2020 16:01
Show Gist options
  • Star 2 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save carloscasalar/a5ff969fca31f32772cb to your computer and use it in GitHub Desktop.
Save carloscasalar/a5ff969fca31f32772cb to your computer and use it in GitHub Desktop.
Docker tips

Docker tips

Links

Commands

  • To show only running containers use: docker ps
  • To show all containers use: docker ps -a
  • Delete container: docker rm -v container-id
  • Lista images: docker images
  • Remove image: docker rmi image-name
  • Open a shell inside container: docker exec -it container_name_or_id /bin/bash
  • Copy a file from container to host: docker cp <containerId>:/file/path/within/container /host/path/target
  • Save image to tar file: docker save --output oel6-xe.tar oel6-xe
  • Load image from tar: sudo docker load oel6-xe.tar
  • Run container overwriting default command (CMD): docker run imagename echo "hello world"
  • Rename a docker image tag: docker tag [image id] [repo:tag]

Build

Dockerfile

Images

Volumes

Development environment

Composer examples

With nodejs

FAQ

Troubles

Tutorials and workshops

Useful links

Docker Snippets Useful snippets for cleanups etc.

Stop all containers

docker stop $(docker ps -a -q) docker ps -a -q | xargs docker stop

Remove all containers

docker rm $(docker ps -a -q) docker ps -a -q | xargs docker rm

Remove all images

docker rmi $(docker images -q) docker images -q | xargs docker rmi

Remove orphaned volumes

docker volume rm $(docker volume ls -qf dangling=true) docker volume ls -qf dangling=true | xargs docker volume rm

Remove exited containers

docker rm -v $(docker ps -a -q -f status=exited) docker ps -a -q -f status=exited | xargs docker rm -v

Stop & Remove all containers with base image name image_name

docker rm $(docker stop $(docker ps -a -q --filter ancestor=image_name)) docker ps -a -q --filter ancestor=image_name | xargs docker stop | xargs docker rm

Remove dangling images

docker rmi $(docker images -f "dangling=true" -q) docker images -f "dangling=true" -q | xargs docker rmi

Cleanup Volumes

docker run -v /var/run/docker.sock:/var/run/docker.sock \
           -v /var/lib/docker:/var/lib/docker \
           --rm martin/docker-cleanup-volumes

Remove all DinD containers

docker rm $(docker stop $(docker ps -a -q --filter ancestor=urbit/dind-jenkins))

Cleanup exited + orphaned + DinD

docker ps -a -q -f status=exited | xargs docker rm -v && \
docker volume ls -qf dangling=true | xargs docker volume rm && \
docker ps -a -q --filter ancestor=urbit/dind-jenkins | xargs docker stop | xargs docker rm

Docker-outside-of-Docker

docker run -d -v /var/run/docker.sock:/var/run/docker.sock \
              -v $(which docker):/usr/bin/docker -p 8080:8080 my-dood-container

Docker-inside-Docker

docker run --privileged --name my-dind-container -d docker:dind docker run --privileged --name my-dind-container -d urbit/dind-jenkins:latest

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment