Docker Fundamentals: Getting Started with Docker
The Magical Shipping Container Story
Imagine you have a toy box that keeps all your favorite toys organized. No matter whose house you visit—Grandma’s, your friend’s, or even a castle—your toy box always has everything you need, and your toys work exactly the same way everywhere!
Docker is like that magical toy box for computer programs.
Before Docker, programmers had a big problem: “It works on my computer… but not on yours!” Docker solved this by putting programs in special containers that work the same way everywhere.
What is Docker?
Docker is a tool that packages your application and everything it needs into a neat container. Think of it like:
- A lunchbox that has your sandwich, juice, and snacks all together
- A travel suitcase that has your clothes, toothbrush, and toys packed
- A shipping container on big cargo ships that carries goods safely anywhere in the world
graph TD A[Your App] --> B[Docker Container] C[Libraries] --> B D[Settings] --> B B --> E[Runs Same Everywhere!] E --> F[Your Laptop] E --> G[Your Friend's PC] E --> H[Cloud Server]
Why is this amazing?
- No more “it works on my machine” problems
- Apps run the same way on any computer
- Easy to share and deploy applications
Docker Desktop: Your Control Center
What is Docker Desktop?
Docker Desktop is like the remote control for your Docker containers. It’s a friendly app you install on your computer that makes Docker easy to use.
Think of it like:
- A game launcher that shows all your games and lets you play them
- A music app that organizes all your songs
- A TV remote that controls everything with buttons
What Docker Desktop Shows You
| Feature | What It Does |
|---|---|
| Containers | See all running containers (like apps playing) |
| Images | Your container blueprints (recipes) |
| Volumes | Storage spaces for your data |
| Settings | Control how Docker works |
The Dashboard View
When you open Docker Desktop, you see:
- Running Containers - Green means running, gray means stopped
- Resource Usage - How much computer power Docker uses
- Quick Actions - Start, stop, or delete containers
+----------------------------------+
| DOCKER DESKTOP |
+----------------------------------+
| Containers Images Volumes |
+----------------------------------+
| [Running] my-web-app ● |
| [Stopped] old-project ○ |
+----------------------------------+
Docker Installation
Before You Start: What You Need
Like building with LEGO, you need the right pieces first!
System Requirements:
| Computer Type | What You Need |
|---|---|
| Windows | Windows 10/11 (64-bit), 4GB RAM |
| Mac | macOS 11 or newer |
| Linux | 64-bit, kernel 3.10+ |
Step-by-Step Installation
For Windows:
-
Go to Docker’s website
-
Download the installer
- Click “Download for Windows”
-
Run the installer
- Double-click the downloaded file
- Follow the wizard (click Next, Next, Install)
-
Restart your computer
- Docker needs a fresh start!
-
Open Docker Desktop
- Look for the whale icon in your taskbar
For Mac:
- Download from docker.com
- Open the .dmg file
- Drag Docker to Applications
- Open from Applications folder
- Click the whale icon to start
For Linux (Ubuntu example):
# Update your packages
sudo apt update
# Install Docker
sudo apt install docker.io
# Start Docker
sudo systemctl start docker
# Make it start automatically
sudo systemctl enable docker
Verify Installation
After installing, let’s make sure Docker works! Open your terminal and type:
docker --version
You should see something like:
Docker version 24.0.7
Congratulations! Docker is now installed!
Docker CLI Basics: Talking to Docker
What is the CLI?
CLI stands for Command Line Interface. It’s like texting with Docker instead of clicking buttons!
Think of it like:
- Telling a robot what to do with special words
- Giving commands to a helpful assistant
- Ordering food at a restaurant
Your First Docker Commands
1. Check if Docker is Running
docker info
This tells you everything about your Docker setup.
2. Say Hello to Docker!
docker run hello-world
This is the classic first command! Docker will:
- Look for the “hello-world” image
- Download it if needed
- Run it and show a welcome message
Output you’ll see:
Hello from Docker!
This message shows Docker
is working correctly.
3. See Your Containers
docker ps
Shows running containers (like checking who’s playing).
docker ps -a
Shows all containers, even stopped ones.
4. See Your Images
docker images
Lists all the “recipes” (images) you have downloaded.
Common Docker Commands Cheat Sheet
| Command | What It Does | Example |
|---|---|---|
docker run |
Start a container | docker run nginx |
docker ps |
List running containers | docker ps |
docker stop |
Stop a container | docker stop myapp |
docker start |
Start a stopped container | docker start myapp |
docker rm |
Remove a container | docker rm myapp |
docker images |
List images | docker images |
docker pull |
Download an image | docker pull nginx |
Understanding the Command Structure
Every Docker command follows a pattern:
docker <command> [options] [arguments]
Example breakdown:
docker run -d -p 8080:80 nginx
| Part | Meaning |
|---|---|
docker |
The Docker program |
run |
Command to start container |
-d |
Run in background (detached) |
-p 8080:80 |
Connect port 8080 to port 80 |
nginx |
The image to run |
Putting It All Together
Now you know the three pillars of getting started with Docker:
graph TD A[Docker Installation] --> D[You're Ready!] B[Docker Desktop] --> D C[Docker CLI] --> D D --> E[Build Amazing Apps]
Quick Recap
- Docker Desktop = Your visual control center
- Docker Installation = Getting Docker on your computer
- Docker CLI = Typing commands to control Docker
Your First Real Example
Let’s run a real web server!
# Pull the nginx image
docker pull nginx
# Run it with port mapping
docker run -d -p 8080:80 nginx
# Check it's running
docker ps
Now open your browser and go to http://localhost:8080 - you’ll see a welcome page!
What You Learned Today
- Docker is like a magical container that makes apps work everywhere
- Docker Desktop is your friendly dashboard for managing containers
- Installing Docker is as easy as downloading any app
- Docker CLI commands let you control Docker with simple words
- Your first command
docker run hello-worldproved Docker works!
You’re now ready to containerize the world!
Key Terms to Remember
| Term | Simple Meaning |
|---|---|
| Container | A packaged app that runs anywhere |
| Image | The recipe/blueprint for a container |
| Docker Desktop | Visual app to manage Docker |
| CLI | Command Line Interface (typing commands) |
| Pull | Download an image |
| Run | Start a container |