KAHIBARO
Bookshelves
Discord
Login
Register
☰
☰
Home
Applied Sciences
Arts
Computer Sciences
Games
Humanities
Languages
Natural Sciences
Religion
Social Sciences
Help
π
Our website is made possible by displaying online advertisements to our visitors.
Please consider supporting us by disabling your ad blocker.
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
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