DEV Community

arafatruetbd
arafatruetbd

Posted on

Docker Cheatsheet: Quick Reference for Developers

Introduction
Docker is a containerization platform that allows you to package applications and their dependencies into lightweight, portable containers. Here’s a quick cheatsheet to get started and work efficiently with Docker.


1. Docker Basics

  • Check Docker version:
docker --version
Enter fullscreen mode Exit fullscreen mode
  • List running containers:
docker ps
Enter fullscreen mode Exit fullscreen mode
  • List all containers (running + stopped):
docker ps -a
Enter fullscreen mode Exit fullscreen mode
  • List all images:
docker images
Enter fullscreen mode Exit fullscreen mode
  • Stop a container:
docker stop <container_id>
Enter fullscreen mode Exit fullscreen mode
  • Remove a container:
docker rm <container_id>
Enter fullscreen mode Exit fullscreen mode
  • Remove an image:
docker rmi <image_name>
Enter fullscreen mode Exit fullscreen mode

2. Working with Images

  • Pull an image from Docker Hub:
docker pull <image_name>:<tag>
Enter fullscreen mode Exit fullscreen mode
  • Build an image from Dockerfile:
docker build -t <image_name>:<tag> .
Enter fullscreen mode Exit fullscreen mode
  • Run a container from an image:
docker run -d --name <container_name> <image_name>:<tag>
Enter fullscreen mode Exit fullscreen mode
  • Run container with port mapping:
docker run -d -p 8080:80 <image_name>
Enter fullscreen mode Exit fullscreen mode

3. Dockerfile Essentials

  • Basic structure:
# Use a base image
FROM node:18

# Set working directory
WORKDIR /app

# Copy package files and install dependencies
COPY package*.json ./
RUN npm install

# Copy app source code
COPY . .

# Expose port and start app
EXPOSE 3000
CMD ["node", "index.js"]
Enter fullscreen mode Exit fullscreen mode

4. Docker Compose Basics

  • docker-compose.yml example for Node.js + MongoDB:
version: '3'
services:
  app:
    build: .
    ports:
      - "3000:3000"
    volumes:
      - .:/app
    depends_on:
      - mongo

  mongo:
    image: mongo:6
    ports:
      - "27017:27017"
Enter fullscreen mode Exit fullscreen mode
  • Commands:
docker-compose up        # Start all services
docker-compose down      # Stop all services
docker-compose logs -f   # Follow logs
Enter fullscreen mode Exit fullscreen mode

5. Useful Docker Commands

  • View container logs:
docker logs -f <container_id>
Enter fullscreen mode Exit fullscreen mode
  • Execute a command in running container:
docker exec -it <container_id> bash
Enter fullscreen mode Exit fullscreen mode
  • Remove all stopped containers:
docker container prune
Enter fullscreen mode Exit fullscreen mode
  • Remove unused images:
docker image prune -a
Enter fullscreen mode Exit fullscreen mode

Conclusion:
Docker simplifies deployment, ensures consistency, and makes scaling easier. Keep this cheatsheet handy while developing and experimenting with containers.

Top comments (0)