Docker Must Have Commands
1. Docker Basics
docker version - Show Docker version information.
docker info - Display system-wide Docker information.
docker help - Show Docker help.
docker <command> --help - Help for a specific command.
2. Working with Images
docker pull <image> - Pull an image from a registry.
docker images - List local images.
docker rmi <image> - Remove an image.
docker build -t <image_name> . - Build an image from a Dockerfile.
docker tag <source_image> <repo>:<tag> - Tag an image.
docker history <image> - Show image layer history.
docker inspect <image> - Show low-level details of an image.
docker save -o image.tar <image> - Save image to a tar archive.
docker load -i image.tar - Load image from a tar archive.
3. Registries (Docker Hub / Private)
docker login - Log in to a registry.
docker logout - Log out from a registry.
docker push <repo>:<tag> - Push an image to a registry.
docker search <term> - Search Docker Hub (or configured registry).
4. Working with Containers
docker run <options> <image> - Run a container.
docker run -it <image> /bin/sh - Run interactively.
docker run -d --name <name> <image> - Run in detached mode with a name.
docker ps - List running containers.
docker ps -a - List all containers (including stopped).
docker start <container> - Start a stopped container.
docker stop <container> - Stop a running container.
docker restart <container> - Restart a container.
docker rm <container> - Remove a stopped container.
docker rename <old_name> <new_name> - Rename a container.
docker kill <container> - Force stop (SIGKILL) a container.
docker pause <container> - Pause processes in a container.
docker unpause <container> - Unpause a container.
docker logs <container> - View container logs.
docker logs -f <container> - Follow logs.
docker exec -it <container> <command> - Run a command inside a running container.
docker attach <container> - Attach terminal to a container (use carefully).
docker cp <container>:<path> <local_path> - Copy files from container to host.
docker cp <local_path> <container>:<path> - Copy files from host to container.
docker port <container> - Show port mappings.
docker diff <container> - Show filesystem changes in container.
docker commit <container> <new_image> - Create an image from a container.
5. Volumes
docker volume create <volume_name> - Create a volume.
docker volume ls - List volumes.
docker volume inspect <volume_name> - Inspect a volume.
docker volume rm <volume_name> - Remove a volume.
docker volume prune - Remove unused volumes.
6. Networks
docker network ls - List networks.
docker network create <network_name> - Create a network.
docker network inspect <network_name> - Inspect a network.
docker network rm <network_name> - Remove a network.
docker network prune - Remove unused networks.
7. Monitoring & Debugging
docker stats - Live resource usage for containers.
docker top <container> - Running processes in a container.
docker inspect <container> - Low-level container details (JSON).
docker events - Real-time Docker events stream.
docker system df - Disk usage by Docker objects.
8. Cleanup
docker system prune - Remove unused containers, networks, images, build cache.
docker system prune -a - More aggressive prune (removes unused images too).
docker container prune - Remove all stopped containers.
docker image prune - Remove dangling images.
docker image prune -a - Remove unused images.
docker builder prune - Remove build cache.
9. Docker Compose (v2 recommended + legacy)
docker compose up - Start services (Compose v2).
docker compose up -d - Start in detached mode.
docker compose down - Stop and remove services, networks.
docker compose ps - List Compose services/containers.
docker compose logs - View logs for services.
docker compose logs -f - Follow logs.
docker compose build - Build/rebuild services.
docker compose pull - Pull service images.
docker compose exec <service> <cmd> - Exec into a service container.
docker-compose up - Legacy Compose (older installs).
docker-compose down - Legacy stop/remove.
docker-compose logs - Legacy logs.
docker-compose ps - Legacy process list.