Ravindra BagaleCourses & study guides मराठी

Chapter 56: Docker CI/CD with Jenkins and ECR, Deploy to Amazon ECS, Troubleshooting, Best Practices and Interview Questions

56.6 Complete Docker CLI reference: every top-level command

Story. Suppose we are at Infosys printing one page to pin next to the monitor. Every docker command group in one table.

Containers: run, ps, exec, logs, stop, rm … Images: build, pull, push, tag, images, rmi … Volumes / networks System, context, builder, buildx Registry: login, logout, search; save/load/export/import
Complete Docker CLI reference: every top-level command

Steps

  1. Containers: run, ps, exec, logs, stop, rm …
  2. Images: build, pull, push, tag, images, rmi …
  3. Volumes / networks
  4. System, context, builder, buildx
  5. Registry: login, logout, search; save/load/export/import
docker run -d --name web -p 8080:80 nginx:1.27
docker ps -a
docker exec -it web sh
docker logs -f --tail 50 web
docker stop -t 20 web
docker rm -f web
docker inspect -f '{{.State.Status}}' web
docker stats --no-stream
docker cp web:/etc/nginx/nginx.conf .
docker build -t api:1 .
docker buildx build --platform linux/amd64,linux/arm64 -t r/api:1 --push .
docker builder prune -f
docker images
docker push r/api:1
docker tag api:1 r/api:1
docker image prune -a -f
docker save -o api.tar api:1
docker export web -o web.tar
docker volume create pgdata
docker network create appnet
docker system df
docker events --filter event=die
docker context use prod
aws ecr get-login-password | docker login -u AWS --password-stdin $REG
docker search --limit 3 redis
docker compose up -d
docker version --format '{{.Server.Version}}'

What each line does

  • docker run -d --name web -p 8080:80 nginx:1.27 — Create and start a container.
  • docker ps -a — List containers.
  • docker exec -it web sh — Run a command in a running container.
  • docker logs -f --tail 50 web — Container output.
  • docker stop -t 20 web — Lifecycle.
  • docker rm -f web — Remove containers.
  • docker inspect -f '{{.State.Status}}' web — Low-level JSON.
  • docker stats --no-stream — Live usage / processes.
  • docker cp web:/etc/nginx/nginx.conf . — Copy files.
  • docker build -t api:1 . — Build an image.
  • docker buildx build --platform linux/amd64,linux/arm64 -t r/api:1 --push . — Advanced/multi-arch builds.
  • docker builder prune -f — Build cache management.
  • docker images — List images.
  • docker push r/api:1 — Download / upload images.
  • docker tag api:1 r/api:1 — Add a name to an image.
  • docker image prune -a -f — Remove images.
  • docker save -o api.tar api:1 — Images to and from tar.
  • docker export web -o web.tar — Container filesystem to tar / tar to image.
  • docker volume create pgdata — Manage volumes.
  • docker network create appnet — Manage networks.
  • docker system df — Disk use and cleanup.
  • docker events --filter event=die — Live daemon events.
  • docker context use prod — Switch target daemon.
  • aws ecr get-login-password | docker login -u AWS --password-stdin $REG — Registry auth.
  • docker search --limit 3 redis — Search Docker Hub.
  • docker compose up -d — Multi-container apps (chapter 53).
  • docker version --format '{{.Server.Version}}' — Client, server and host details.

Command reference table

Command Common flags Example Expected output Meaning
docker run -d -it --name -p -v -e --rm --network docker run -​d --​name web -​p 8080:​80 nginx:​1.​27 3f9a1c... Create and start a container.
docker ps -a -q -s --filter --format docker ps -a CONTAINER ID IMAGE STATUS List containers.
docker exec -it -u -w -e docker exec -​it web sh / # Run a command in a running container.
docker logs -f --tail --since -t docker logs -​f --​tail 50 web GET / 200 Container output.
docker start/​stop/​restart -t -a docker stop -​t 20 web web Lifecycle.
docker rm -f -v docker rm -f web web Remove containers.
docker inspect -f --type docker inspect -​f '{{.​State.​Status}}' web running Low-level JSON.
docker stats / top --no-stream docker stats --​no-​stream NAME CPU % MEM Live usage / processes.
docker cp -a docker cp web:/​etc/​nginx/​nginx.​conf . Successfully copied Copy files.
docker build -t -f --target --build-arg --no-cache --pull --secret docker build -​t api:​1 . naming to docker.io/library/api:1 Build an image.
docker buildx build --platform --push, create, ls, imagetools docker buildx build --​platform linux/​amd64,​linux/​arm64 -​t r/​api:​1 --​push . pushing manifest list Advanced/multi-arch builds.
docker builder prune -a, ls, du docker builder prune -​f Total reclaimed space: 1.2GB Build cache management.
docker images / image ls -a -q --filter --digests docker images REPOSITORY TAG SIZE List images.
docker pull / push --platform -a docker push r/​api:​1 digest: sha256:... Download / upload images.
docker tag SOURCE TARGET docker tag api:​1 r/​api:​1 (no output) Add a name to an image.
docker rmi / image prune -f / -a docker image prune -​a -​f Total reclaimed space Remove images.
docker save / load -o / -i docker save -​o api.​tar api:​1 (file api.tar) Images to and from tar.
docker export / import -o docker export web -​o web.​tar (file web.tar) Container filesystem to tar / tar to image.
docker volume create ls inspect rm prune docker volume create pgdata pgdata Manage volumes.
docker network create ls inspect connect disconnect rm prune docker network create appnet 9c1e... Manage networks.
docker system df prune info events docker system df TYPE TOTAL SIZE RECLAIMABLE Disk use and cleanup.
docker events --since --filter --format docker events --​filter event=​die container die ... Live daemon events.
docker context create ls use inspect rm docker context use prod prod Switch target daemon.
docker login / logout -u --password-stdin aws ecr get-​login-​password | docker login -​u AWS --​password-​stdin $REG Login Succeeded Registry auth.
docker search --limit --filter docker search --​limit 3 redis NAME STARS OFFICIAL Search Docker Hub.
docker compose up down ps logs exec … docker compose up -​d ✔ Started Multi-container apps (chapter 53).
docker version / info --format docker version --​format '{{.​Server.​Version}}' 27.3.1 Client, server and host details.

When it is green.

$ docker run -d --name web -p 8080:80 nginx:1.27
3f9a1c...
$ docker ps -a
CONTAINER ID IMAGE STATUS
$ docker exec -it web sh
/ #
$ docker logs -f --tail 50 web
GET / 200
$ docker stop -t 20 web
web
$ docker rm -f web
web

When it is red.

docker: 'imgaes' is not a docker command.

Fix. Typo. Run docker --help or docker COMMAND --help to see exact names and flags.

Quick quiz

Q1. Command to switch between Docker hosts?

docker context use NAME.

Q2. export vs save?

export dumps a container filesystem; save keeps image layers and tags.

Ravi Sir's Cards for this lesson

मराठी cards