Working with Docker Images

Docker Images are read-only filesystem templates built from stacked layers. Every instruction in a Dockerfile creates a new cached image layer.

1. Searching & Pulling Images from Docker Hub

Pull popular official base images for Node.js, Python, PostgreSQL, Ubuntu, and Redis:

# Search images on Docker Hub
docker search node

# Pull specific version tag (Recommended for stability!)
docker pull node:18-alpine
docker pull postgres:15-alpine
docker pull redis:7-alpine

2. Listing & Tagging Images

# List all downloaded images on local machine
docker images

# Tag an existing image for your Docker Hub repository
# Format: docker tag <source-image>:<tag> <repository>/<image>:<tag>
docker tag node:18-alpine myusername/my-custom-node:v1.0

3. Deleting Unused Images (`docker rmi`)

# Delete a specific image by ID or name
docker rmi node:18-alpine

# Delete all dangling (un-tagged) intermediate images
docker image prune

Next Up

Learn how to write a custom Dockerfile: FROM, WORKDIR, COPY, RUN, CMD vs ENTRYPOINT.

Next Lesson: Writing a Dockerfile →