Kahibaro
Discord
Login
Register
☰
Home
Natural Sciences
Humanities
Social Sciences
Applied Sciences
Computer Sciences
Languages
Arts
Help
Our website is made possible by displaying online advertisements to our visitors.
Please consider supporting us by disabling your ad blocker.
1 Introduction ▼
2 Core Concepts ▼
3 Installing Docker ▼
4 Your First Docker Container ▼
5 Working with Docker Images ▼
6 Dockerfiles – Building Your Own Images ▼
7 Managing Data with Volumes ▼
8 Networking in Docker ▼
9 Docker Compose ▼
10 Debugging and Monitoring Containers ▼
11 Security Basics ▼
12 Performance and Optimization ▼
13 Docker in Development Workflows ▼
14 Deployment Basics ▼
15 Beyond the Basics ▼
16 Practical Projects ▼
17 Troubleshooting and FAQ ▼
☰
Docker
Docker
1 Introduction
▼
1.1 What is Docker?
1.2 Why Docker?
1.3 Virtual Machines vs Containers
1.4 When Not to Use Docker
1.5 How Docker Is Used in Real Projects
2 Core Concepts
▼
2.1 Images
2.2 Containers
2.3 Docker Engine and Architecture
2.4 Docker Hub and Container Registries
2.5 Tags, Versions, and Digests
3 Installing Docker
▼
3.1 Docker on Linux
3.2 Docker on Windows
3.3 Docker on macOS
3.4 Verifying the Installation
3.5 Common Installation Issues
4 Your First Docker Container
▼
4.1 Running Your First Container
4.2 Understanding `docker run`
4.3 Interactive vs Detached Mode
4.4 Stopping and Removing Containers
4.5 Listing Containers
5 Working with Docker Images
▼
5.1 Pulling Images from Docker Hub
5.2 Listing and Removing Images
5.3 Image Layers Explained
5.4 Image Size Optimization
5.5 Inspecting Images
6 Dockerfiles – Building Your Own Images
▼
6.1 What Is a Dockerfile?
6.2 Basic Dockerfile Structure
6.3 Common Instructions (`FROM`, `RUN`, `COPY`, `CMD`, `ENTRYPOINT`)
6.4 Building Images with `docker build`
6.5 Best Practices for Dockerfiles
6.6 Multi-Stage Builds
7 Managing Data with Volumes
▼
7.1 Why Containers Are Ephemeral
7.2 Bind Mounts vs Volumes
7.3 Creating and Using Volumes
7.4 Inspecting and Removing Volumes
7.5 Real-World Examples
8 Networking in Docker
▼
8.1 Docker Networking Basics
8.2 Bridge Networks
8.3 Port Mapping
8.4 Container-to-Container Communication
8.5 Custom Networks
9 Docker Compose
▼
9.1 Why Docker Compose?
9.2 `docker-compose.yml` Structure
9.3 Defining Services, Networks, and Volumes
9.4 Running Multi-Container Applications
9.5 Web App and Database Example
9.6 Docker Compose Best Practices
10 Debugging and Monitoring Containers
▼
10.1 Viewing Logs
10.2 Executing Commands in Running Containers
10.3 Inspecting Containers
10.4 Resource Usage
10.5 Common Errors and Fixes
11 Security Basics
▼
11.1 Running Containers as Non-Root
11.2 Image Trust and Verification
11.3 Secrets and Environment Variables
11.4 Reducing Attack Surface
11.5 Security Best Practices
12 Performance and Optimization
▼
12.1 Reducing Image Size
12.2 Caching and Layer Ordering
12.3 Resource Limits
12.4 Choosing the Right Base Image
13 Docker in Development Workflows
▼
13.1 Docker for Local Development
13.2 Hot Reloading with Volumes
13.3 Docker and Git
13.4 Docker in CI/CD Pipelines
13.5 Common Development Patterns
14 Deployment Basics
▼
14.1 Running Containers in Production
14.2 Environment Configuration
14.3 Restart Policies
14.4 Logging Strategies
14.5 Basic Scaling Concepts
15 Beyond the Basics
▼
15.1 Docker Swarm Overview
15.2 Kubernetes vs Docker
15.3 Container Registries
15.4 When to Move Beyond Docker
16 Practical Projects
▼
16.1 Dockerizing a Simple Web App
16.2 Dockerizing a Backend API
16.3 Full-Stack App with Docker Compose
16.4 Common Project Pitfalls
17 Troubleshooting and FAQ
▼
17.1 Common Beginner Mistakes
17.2 Docker Command Cheat Sheet
17.3 FAQ
17.4 Useful Resources
Where to Move
Move chapter:
☰
1 Introduction
☰
1.1 What is Docker?
☰
1.2 Why Docker?
☰
1.3 Virtual Machines vs Containers
☰
1.4 When Not to Use Docker
☰
1.5 How Docker Is Used in Real Projects
☰
2 Core Concepts
☰
2.1 Images
☰
2.2 Containers
☰
2.3 Docker Engine and Architecture
☰
2.4 Docker Hub and Container Registries
☰
2.5 Tags, Versions, and Digests
☰
3 Installing Docker
☰
3.1 Docker on Linux
☰
3.2 Docker on Windows
☰
3.3 Docker on macOS
☰
3.4 Verifying the Installation
☰
3.5 Common Installation Issues
☰
4 Your First Docker Container
☰
4.1 Running Your First Container
☰
4.2 Understanding `docker run`
☰
4.3 Interactive vs Detached Mode
☰
4.4 Stopping and Removing Containers
☰
4.5 Listing Containers
☰
5 Working with Docker Images
☰
5.1 Pulling Images from Docker Hub
☰
5.2 Listing and Removing Images
☰
5.3 Image Layers Explained
☰
5.4 Image Size Optimization
☰
5.5 Inspecting Images
☰
6 Dockerfiles – Building Your Own Images
☰
6.1 What Is a Dockerfile?
☰
6.2 Basic Dockerfile Structure
☰
6.3 Common Instructions (`FROM`, `RUN`, `COPY`, `CMD`, `ENTRYPOINT`)
☰
6.4 Building Images with `docker build`
☰
6.5 Best Practices for Dockerfiles
☰
6.6 Multi-Stage Builds
☰
7 Managing Data with Volumes
☰
7.1 Why Containers Are Ephemeral
☰
7.2 Bind Mounts vs Volumes
☰
7.3 Creating and Using Volumes
☰
7.4 Inspecting and Removing Volumes
☰
7.5 Real-World Examples
☰
8 Networking in Docker
☰
8.1 Docker Networking Basics
☰
8.2 Bridge Networks
☰
8.3 Port Mapping
☰
8.4 Container-to-Container Communication
☰
8.5 Custom Networks
☰
9 Docker Compose
☰
9.1 Why Docker Compose?
☰
9.2 `docker-compose.yml` Structure
☰
9.3 Defining Services, Networks, and Volumes
☰
9.4 Running Multi-Container Applications
☰
9.5 Web App and Database Example
☰
9.6 Docker Compose Best Practices
☰
10 Debugging and Monitoring Containers
☰
10.1 Viewing Logs
☰
10.2 Executing Commands in Running Containers
☰
10.3 Inspecting Containers
☰
10.4 Resource Usage
☰
10.5 Common Errors and Fixes
☰
11 Security Basics
☰
11.1 Running Containers as Non-Root
☰
11.2 Image Trust and Verification
☰
11.3 Secrets and Environment Variables
☰
11.4 Reducing Attack Surface
☰
11.5 Security Best Practices
☰
12 Performance and Optimization
☰
12.1 Reducing Image Size
☰
12.2 Caching and Layer Ordering
☰
12.3 Resource Limits
☰
12.4 Choosing the Right Base Image
☰
13 Docker in Development Workflows
☰
13.1 Docker for Local Development
☰
13.2 Hot Reloading with Volumes
☰
13.3 Docker and Git
☰
13.4 Docker in CI/CD Pipelines
☰
13.5 Common Development Patterns
☰
14 Deployment Basics
☰
14.1 Running Containers in Production
☰
14.2 Environment Configuration
☰
14.3 Restart Policies
☰
14.4 Logging Strategies
☰
14.5 Basic Scaling Concepts
☰
15 Beyond the Basics
☰
15.1 Docker Swarm Overview
☰
15.2 Kubernetes vs Docker
☰
15.3 Container Registries
☰
15.4 When to Move Beyond Docker
☰
16 Practical Projects
☰
16.1 Dockerizing a Simple Web App
☰
16.2 Dockerizing a Backend API
☰
16.3 Full-Stack App with Docker Compose
☰
16.4 Common Project Pitfalls
☰
17 Troubleshooting and FAQ
☰
17.1 Common Beginner Mistakes
☰
17.2 Docker Command Cheat Sheet
☰
17.3 FAQ
☰
17.4 Useful Resources
Close