50+ Docker Commands For Container Management, Image Manipulation, Networking & More .
Container Management:
- Run a Container:
docker run [OPTIONS] IMAGE[:TAG] [COMMAND] [ARG...]
- List Running Containers:
docker ps
- List All Containers:
docker ps -a
- Stop a Running Container:
docker stop CONTAINER_ID
- Remove a Container:
docker rm CONTAINER_ID
- Remove All Stopped Containers:
docker container prune
- Inspect Container Details:
docker inspect CONTAINER_ID
- Attach to a Running Container:
docker exec -it CONTAINER_ID /bin/bash
Image Manipulation:
- List Local Images:
docker images
- Pull an Image from Docker Hub:
docker pull IMAGE[:TAG]
- Build an Image from Dockerfile:
docker build -t IMAGE_NAME:TAG -f PATH_TO_DOCKERFILE PATH_TO_Build_contents
- Remove an Image:
docker rmi IMAGE_ID
- Remove All Unused Images:
docker image prune
Networking:
- List Networks:
docker network ls
- Inspect Network Details:
docker network inspect NETWORK_ID
- Create a Bridge Network:
docker network create --driver bridge NETWORK_NAME
- Connect Container to Network:
docker network connect NETWORK_NAME CONTAINER_NAME
- Disconnect Container from Network:
docker network disconnect NETWORK_NAME CONTAINER_NAME
Volume Management:
- List Volumes:
docker volume ls
- Inspect Volume Details:
docker volume inspect VOLUME_NAME
- Create a Volume:
docker volume create VOLUME_NAME
- Remove a Volume:
docker volume rm VOLUME_NAME
Container Logs:
- View Container Logs:
docker logs CONTAINER_ID
- Tail Container Logs:
docker logs -f CONTAINER_ID
Docker Compose:
- Run Docker Compose:
docker-compose up -d
- Stop Docker Compose Services:
docker-compose down
- Build and Run Docker Compose:
docker-compose up --build -d
Docker System:
- Display System-Wide Information:
docker info
- Show Docker Disk Usage:
docker system df
- Remove All Unused Data:
docker system prune
Docker Registry:
- Login to Docker Hub:
docker login
- Push Image to Private Registry:
docker tag IMAGE[:TAG] REGISTRY_URL/IMAGE[:TAG]
docker push REGISTRY_URL/IMAGE[:TAG]
- Pull Image from Private Registry:
docker pull REGISTRY_URL/IMAGE[:TAG]
Docker Swarm:
- Initialize Docker Swarm:
docker swarm init
- Join Node to Swarm:
docker swarm join --token TOKEN IP:PORT
- List Nodes in Swarm:
docker node ls
- Create a Service:
docker service create [OPTIONS] IMAGE[:TAG] [COMMAND] [ARG...]
- Scale a Service:
docker service scale SERVICE_NAME=REPLICAS
- Inspect Service Details:
docker service inspect SERVICE_NAME
- Remove a Service:
docker service rm SERVICE_NAME
- Update a Service:
docker service update [OPTIONS] --force SERVICE_NAME
- List all Service Replica:
docker service ps SERVICE_NAME
Docker Security:
- Check Container Vulnerabilities:
docker scan IMAGE[:TAG]
- Run Container with Security Options:
docker run --security-opt seccomp=unconfined --cap-add=SYS_PTRACE -it IMAGE[:TAG]
- Run Container with Readonly Filesystem:
docker run --read-only -it IMAGE[:TAG]
Docker Stats:
- Display Real-time Container Resource Usage:
docker stats CONTAINER_ID
Docker Events:
- Monitor Docker Events:
docker events
Docker Debugging:
- Inspect Docker Bridge Network:
docker network inspect bridge
- View Docker Daemon Logs:
journalctl -u docker
- Check Docker Version:
docker version
Miscellaneous:
- Copy Files between Host and Container:
docker cp SOURCE_PATH CONTAINER_ID:DEST_PATH
- Create a Custom Docker Bridge Network:
docker network create --driver bridge --subnet=SUBNET_NAME CUSTOM_NETWORK_NAME
This cheat sheet covers a wide range of Docker commands for container management, image manipulation, networking, and more. Customize commands based on your specific use case and requirements.