Docker Desktop
# Docker Desktop
**Docker Desktop** is Docker's official **local containerized development environment**, used on **macOS / Windows (and some Linux)** to:
* Run Docker Engine
* Build, run, and manage containers and images
* Provide a graphical management interface (GUI)
* Integrate Kubernetes (optional)
In one sentence:
> Docker Desktop = Docker Engine + Linux VM + GUI + Developer Experience Optimization
Docker Desktop has become the **de facto standard for local Docker development**.
### Why Use Docker Desktop
Before Docker Desktop, using Docker locally had many problems:
* macOS / Windows cannot run Docker natively
* Manual installation of virtual machines (VirtualBox) was required
* Network, file mounting, and port mapping configuration was complex
Docker Desktop solves these problems:
| Capability | Description |
| --- | --- |
| One-click Installation | Automatically completes virtualization and Docker installation |
| Out-of-the-box | Ready to use after installation |
| Graphical Interface | Visualization of containers, images, and logs |
| CLI Compatible | Fully consistent with native `docker` commands |
| Kubernetes | One-click enable local K8s |
* * *
## Docker Desktop Overall Architecture
Understanding the architecture helps avoid common misconceptions.
Host System (macOS / Windows) βββ Docker Desktop βββ Linux Virtual Machine βββ Docker Engine βββ Images βββ Containers βββ Volumes
**Key Points:**
* Docker actually runs in a **Linux VM**
* Local files, ports, and processes are "mapped results"
* This is also the root cause of file mounting and performance issues
!(#)
* * *
## Installing Docker Desktop
### System Requirements
* macOS (Apple Silicon / Intel)
* Windows 10 / 11 (WSL2 recommended)
* At least 4GB RAM (8GB+ recommended)
### Installation Process (Conceptual)
* Download Docker Desktop installer, download address: [https://www.docker.com/products/docker-desktop/](https://www.docker.com/products/docker-desktop/)
!(#)
* Drag to Applications folder / complete installation wizard. Windows users should ensure "Use WSL 2 instead of Hyper-V" is checked during installation.
* Start Docker Desktop
* Wait for Docker Engine to start
After successful startup:
* Docker icon appears in the menu bar
* `docker version` outputs normally
* * *
## Docker Desktop Interface Quick Overview
Docker Desktop's GUI is mainly divided into the following modules:
| Module | Function |
| --- | --- |
| Containers | Manage running containers |
| Images | View local images |
| Volumes | Manage data volumes |
| Builds | Build records |
| Settings | Configure resources, network, K8s |
!(#)
* * *
## Core Concepts: Images and Containers
Understanding Docker only requires remembering this simple analogy:
| Concept | Analogy | Description |
| --- | --- | --- |
| **Image** | **Recipe** | A read-only file containing all the code, environment, and libraries needed to run a program. |
| **Container** | **Prepared Dish** | A running instance of an image. You can make many dishes from one recipe. |
| **Registry** | **Food Court** | A place to store and share images, the most famous being **Docker Hub**. |
YouTip