Kahibaro
Discord Login Register

17.2 Docker Command Cheat Sheet

Overview

This chapter gives you a compact reference of the most commonly used Docker commands. It is not a place for long explanations, but a quick way to recall syntax and typical patterns as you work.

Keep this rule in mind: If you are not sure what a command does, especially if it contains rm, prune, or --force, look it up first or test it on a non‑critical system.

Getting Help

Use these when you forget command options or need a quick reminder.

docker help
docker <command> --help
docker compose --help

Working with Images

Pull an image from a registry:

docker pull <image>
docker pull <image>:<tag>

List local images:

docker images
docker image ls

Remove images:

docker rmi <image>
docker image rm <image>
docker image rm <image1> <image2>

Tag images:

docker tag <source-image>:<tag> <target-name>:<tag>

Inspect image metadata:

docker image inspect <image>

Search in Docker Hub from the CLI:

docker search <term>

Deleting an image that is used by existing containers can break those containers. Stop and remove containers first if you intend to fully clean up.

Working with Containers

Run a container from an image:

docker run <image>
docker run --name <name> <image>
docker run -d <image>
docker run -it <image> /bin/bash

List containers:

docker ps
docker ps -a

Stop and start containers:

docker stop <container>
docker start <container>
docker restart <container>

Remove containers:

docker rm <container>
docker rm <container1> <container2>
docker rm -f <container>

View details about a container:

docker inspect <container>

docker rm -f forcefully stops and removes containers. Use it carefully, especially on shared or production environments.

Logs and Debugging

View logs:

docker logs <container>
docker logs -f <container>
docker logs --tail 100 <container>

Run a command inside a running container:

docker exec -it <container> /bin/bash
docker exec -it <container> <command>

Copy files to and from containers:

docker cp <local-path> <container>:/path/in/container
docker cp <container>:/path/in/container <local-path>

Ports, Networking, and Connectivity

Run a container with port mapping:

docker run -p <host-port>:<container-port> <image>
Example:
docker run -p 8080:80 nginx

List networks:

docker network ls

Create and remove networks:

docker network create <network-name>
docker network rm <network-name>

Connect or disconnect containers to networks:

docker network connect <network> <container>
docker network disconnect <network> <container>

Inspect a network:

docker network inspect <network>

Volumes and Data

List volumes:

docker volume ls

Create a volume:

docker volume create <name>

Use a named volume:

docker run -v <volume-name>:/path/in/container <image>

Use a bind mount from the host:

docker run -v /host/path:/path/in/container <image>

Inspect a volume:

docker volume inspect <name>

Remove volumes:

docker volume rm <name>
docker volume rm <name1> <name2>

docker volume rm permanently removes the data in that volume. Check you are not deleting important data.

Building Images with Dockerfiles

Build an image from a Dockerfile:

docker build -t <image-name> .
docker build -t <image-name>:<tag> <path>

Use build arguments:

docker build --build-arg <NAME>=<value> -t <image-name> .

Show build cache usage and progress:

docker build --progress=plain -t <image-name> .

System Cleanup

Remove unused containers, networks, images, and build cache:

docker system prune
docker system prune -a

Remove unused images only:

docker image prune

Remove stopped containers only:

docker container prune

Remove unused volumes only:

docker volume prune

docker system prune -a deletes all unused images and stopped containers. Use it only when you are sure you do not need them anymore.

Resource Usage and Monitoring

Show container resource usage:

docker stats
docker stats <container>

Show running processes inside a container:

docker top <container>

Show low level information:

docker inspect <object-name-or-id>

Docker Compose Basics

Use when working with docker-compose.yml.

Start services:

docker compose up
docker compose up -d

Stop services:

docker compose down

View running services:

docker compose ps

View logs:

docker compose logs
docker compose logs -f

Rebuild and restart:

docker compose up --build

Run a one‑off command in a Compose service:

docker compose run <service> <command>

Quick Patterns to Remember

Run a temporary container and remove it when it exits:

docker run --rm <image> <command>

Map current directory into a container:

docker run -v $(pwd):/app -w /app <image> <command>

Follow a container log until it stops:

docker logs -f <container>

Restart a container on failure:

docker run --restart=on-failure <image>

When combining options, read the full command twice before pressing Enter, especially if it contains rm, prune, or -f. This simple habit can prevent accidental data loss.

Views: 5

Comments

Please login to add a comment.

Don't have an account? Register now!