Docker vs VMware: A Complete Comparison
Docker and VMware are two of the most influential technologies in modern infrastructure, but they are frequently misunderstood because they both allow multiple workloads to run on the same physical hardware. At a high level, both improve resource utilization and application deployment, yet they solve fundamentally different problems. VMware virtualizes hardware to create complete virtual machines, while Docker containerizes applications by sharing the host operating system. Understanding this distinction is essential because these technologies are often used together rather than replacing one another.
Rather than viewing Docker and VMware as competing products, it is more accurate to think of them as technologies operating at different layers of the infrastructure stack. VMware provides isolated virtual infrastructure, while Docker provides portable application environments that run on top of an operating system.
Understanding VMware
VMware is a virtualization platform that enables multiple virtual machines to share the same physical server. Every virtual machine includes its own operating system, libraries, runtime environment, and applications, allowing workloads to remain strongly isolated from one another.
Because each virtual machine operates independently, VMware supports different operating systems on the same hardware while providing mature enterprise capabilities such as snapshots, live migration, disaster recovery, and high availability.
Understanding Docker

Docker is a containerization platform that packages applications together with their dependencies into lightweight containers. Instead of virtualizing hardware, Docker isolates application processes while allowing containers to share the host operating system kernel.
Since containers do not require separate operating systems, they consume fewer resources, start much faster, and allow significantly higher workload density than traditional virtual machines.
Different Technologies for Different Goals
VMware focuses on infrastructure virtualization and operating system isolation, making it well-suited for enterprise infrastructure and legacy applications. Docker focuses on application portability and deployment consistency, making it ideal for cloud-native development, microservices, and continuous delivery.
Modern cloud platforms frequently combine both technologies, running Docker containers inside VMware virtual machines to benefit from the strengths of each.
| Technology | Primary Focus |
|---|---|
| VMware | Hardware virtualization |
| Docker | Application containerization |
| Virtual Machines | Independent operating systems |
| Containers | Lightweight application isolation |
Why This Comparison Matters
As organizations modernize their infrastructure, Docker and VMware are often evaluated during cloud migration, platform engineering, and application modernization projects. Although both improve infrastructure efficiency, they influence deployment workflows, operational complexity, scalability, and resource utilization in very different ways. Choosing between them, or deciding how to combine them, has long-term implications for application architecture and operational management.
The comparison is therefore less about identifying a superior technology and more about understanding which one best aligns with an organization’s technical and business requirements.
The Evolution of Infrastructure
Traditional applications were deployed directly onto physical servers, often resulting in poor hardware utilization because each server typically hosted only a single application. VMware transformed enterprise infrastructure by allowing multiple virtual machines to share the same physical hardware while maintaining strong isolation between workloads.
As cloud-native development became increasingly popular, Docker introduced a lighter deployment model that packages applications instead of operating systems. This dramatically reduced infrastructure overhead while improving portability across development, testing, and production environments.
Different Levels of Abstraction
One of the biggest architectural differences lies in what each technology virtualizes. VMware virtualizes physical hardware, allowing every virtual machine to run its own operating system. Docker virtualizes the operating system itself, enabling multiple containers to share a common kernel while remaining logically isolated.
This difference explains why containers typically start much faster and consume fewer resources than virtual machines.
Choosing the Right Technology
Organizations prioritizing operating system flexibility, legacy application support, and strong workload isolation often choose VMware. Teams building microservices, APIs, cloud-native platforms, or CI/CD pipelines generally benefit from Docker because of its portability and lightweight deployment model.
Many enterprises intentionally combine both approaches, allowing VMware to provide infrastructure virtualization while Docker manages application deployment inside those virtual machines.
| Consideration | VMware | Docker |
|---|---|---|
| Virtualization Level | Hardware | Operating System |
| Operating Systems | Multiple guest operating systems | Shared host kernel |
| Resource Overhead | Higher | Lower |
| Startup Speed | Slower | Faster |
| Best Fit | Enterprise virtualization | Cloud-native applications |
How VMware Works
VMware provides virtualization by creating software-defined computers called virtual machines. Instead of applications interacting directly with physical hardware, a hypervisor sits between the hardware and the virtual machines, allocating computing resources while ensuring each workload remains isolated. This architecture allows multiple operating systems to run simultaneously on the same server without interfering with one another.
Because virtual machines closely resemble physical computers, organizations can migrate existing applications into VMware environments with relatively few modifications.
Hypervisors
The foundation of VMware virtualization is the hypervisor. VMware ESXi, the company’s Type 1 hypervisor, runs directly on physical hardware and manages virtual machine execution without requiring a separate host operating system.
The hypervisor allocates CPU time, memory, storage, and networking resources while ensuring workloads remain isolated and secure. Running directly on hardware minimizes overhead and provides predictable performance for enterprise workloads.
Virtual Machines
Each VMware virtual machine contains a complete guest operating system together with its applications, libraries, and runtime dependencies. From the application’s perspective, the virtual machine behaves almost identically to a physical server.
This independence allows organizations to run Windows, Linux, and other operating systems simultaneously while maintaining complete separation between workloads.
Resource Allocation
VMware dynamically distributes CPU, memory, storage, and networking resources across virtual machines according to administrator-defined policies. Features such as resource pools, reservations, limits, and shares help ensure critical workloads receive sufficient resources during periods of high demand.
These capabilities allow infrastructure administrators to maximize hardware utilization without sacrificing workload stability.
VMware Management Tools
VMware provides a mature ecosystem of management tools that simplify enterprise infrastructure operations. VMware vCenter centralizes administration, while features such as snapshots, vMotion, High Availability (HA), and Distributed Resource Scheduler (DRS) automate migration, recovery, and resource balancing across clusters.
These enterprise capabilities have made VMware one of the most widely adopted virtualization platforms in large organizations.
| VMware Component | Responsibility |
|---|---|
| ESXi Hypervisor | Hardware virtualization |
| Virtual Machine | Execute isolated operating systems |
| Virtual Hardware | CPU, memory, storage, networking |
| vCenter | Centralized infrastructure management |
| vMotion | Live migration of virtual machines |
How Docker Works
Docker simplifies application deployment by packaging software together with everything it needs to run. Rather than creating complete virtual machines, Docker creates containers that share the host operating system while remaining isolated from one another. This lightweight architecture allows applications to run consistently across different environments while minimizing infrastructure overhead.
Containers have become a foundational technology for cloud-native development because they combine portability, efficiency, and predictable deployments.
Docker Engine
The Docker Engine is responsible for creating, managing, and running containers. It consists of the Docker daemon, which performs container operations, and the Docker CLI, which allows developers to build images, launch containers, and manage deployments through simple commands.
Together, these components provide a consistent interface for managing containerized applications throughout the software lifecycle.
Containers
A Docker container packages application code, runtime libraries, configuration files, and dependencies into an isolated execution environment. Unlike virtual machines, containers do not require separate operating systems because they share the host kernel while remaining isolated through operating system features such as namespaces and cgroups.
This architecture allows containers to launch quickly while consuming significantly fewer resources than virtual machines.
Docker Images
Containers are created from Docker images, which represent immutable application packages stored in image registries such as Docker Hub or private repositories. Images use a layered structure, allowing common operating system components to be shared across multiple applications.
Layered images reduce storage requirements while accelerating deployment because only modified layers must be transferred between systems.
Docker Networking and Volumes
Docker includes built-in networking capabilities that allow containers to communicate securely with one another while remaining isolated from unrelated workloads. Persistent storage is provided through Docker volumes, enabling applications to retain data independently of individual container lifecycles.
Together, networking and volumes allow containerized applications to support both stateless services and persistent workloads.
| Docker Component | Responsibility |
|---|---|
| Docker Engine | Manage container lifecycle |
| Container | Execute isolated application |
| Docker Image | Package application and dependencies |
| Docker Network | Enable container communication |
| Docker Volume | Provide persistent storage |
Docker vs VMware Architecture Comparison
Although Docker and VMware both improve infrastructure utilization, their architectures differ fundamentally. VMware creates complete virtual machines by virtualizing hardware, while Docker creates isolated application environments by virtualizing the operating system. These architectural choices influence performance, scalability, portability, operational complexity, and infrastructure management.
Understanding these differences helps architects select the appropriate technology based on workload requirements rather than product popularity.
Isolation Model
VMware isolates workloads by creating independent virtual machines, each with its own operating system and virtual hardware. This approach provides strong separation between workloads and allows different operating systems to coexist on the same server.
Docker isolates applications at the operating system level. Containers share the host kernel while maintaining separate processes, networking, and file systems, providing lightweight isolation suitable for cloud-native applications.
Operating System Requirements
Every VMware virtual machine includes its own guest operating system, increasing both startup time and resource consumption. Docker containers eliminate this requirement by sharing the host operating system kernel, allowing applications to launch without booting separate operating systems.
Sharing the kernel significantly improves efficiency but also changes the security and isolation model compared to virtualization.
Resource Utilization
Virtual machines require additional CPU, memory, and storage to support independent operating systems. Docker containers avoid this overhead, enabling many more application instances to run on the same hardware.
Higher workload density reduces infrastructure costs while supporting rapid autoscaling for modern distributed applications.
Portability
VMware workloads can be migrated between compatible virtualization environments using tools such as vMotion, but complete virtual machine images remain relatively large. Docker images are considerably smaller and easier to distribute, making them highly portable across developer laptops, testing environments, cloud platforms, and Kubernetes clusters.
This portability has made Docker a standard deployment format for cloud-native applications.
| Architectural Area | VMware | Docker |
|---|---|---|
| Isolation | Hardware virtualization | Operating system virtualization |
| Operating System | Guest OS per VM | Shared host kernel |
| Resource Overhead | Higher | Lower |
| Startup Time | Slower | Faster |
| Deployment Unit | Virtual machine | Container image |
Performance and Resource Efficiency
Performance comparisons between Docker and VMware extend beyond raw application speed. Startup time, resource consumption, storage requirements, workload density, and operational scalability all influence how efficiently infrastructure supports modern applications. Because Docker and VMware rely on fundamentally different architectures, their performance characteristics naturally differ in several important areas.
Selecting the appropriate technology depends on which performance characteristics matter most for the workload being deployed.
Startup Time
Virtual machines require an entire operating system to boot before applications become available. Depending on configuration, this initialization process may take several minutes.
Docker containers generally start in seconds because they launch application processes directly without booting a separate operating system. Fast startup enables rapid deployments, autoscaling, rolling updates, and efficient failure recovery.
CPU and Memory Usage
Every VMware virtual machine reserves resources for its guest operating system in addition to the application itself. As more virtual machines are deployed, operating system overhead consumes an increasing portion of available hardware.
Docker containers share the host operating system kernel, allowing a greater percentage of available CPU and memory to support actual application workloads rather than operating system infrastructure.
Storage Efficiency
Virtual machine images typically include complete operating systems together with application software, resulting in relatively large storage requirements. Docker images use layered file systems that allow multiple containers to share common layers, reducing storage consumption significantly.
Layered images also simplify updates because only modified layers need to be distributed during deployments.
Density and Scalability
Docker’s lightweight architecture enables significantly higher workload density than virtual machines. Organizations can often run many more containers than virtual machines on the same hardware while maintaining comparable application performance.
Virtual machines remain valuable for workloads requiring strong isolation or multiple operating systems, but containers generally provide superior efficiency for cloud-native deployments.
| Performance Area | VMware | Docker |
|---|---|---|
| Startup Time | Slower operating system boot | Fast container startup |
| CPU Usage | Higher virtualization overhead | Lower overhead |
| Memory Usage | Guest operating systems consume memory | Shared kernel reduces memory usage |
| Storage | Larger VM images | Layered container images |
| Workload Density | Lower | Higher |
Security and Isolation Comparison
Security is one of the biggest architectural differences between Docker and VMware because each technology isolates workloads in fundamentally different ways. VMware achieves isolation by virtualizing hardware and running completely independent operating systems, while Docker isolates applications that share the host operating system kernel. Both approaches can be highly secure when configured correctly, but they introduce different operational responsibilities and risk profiles.
Choosing between them depends on the sensitivity of the workload, compliance requirements, operational maturity, and the level of isolation an organization requires rather than assuming one technology is always more secure.
Isolation Boundaries
VMware provides hardware-level isolation through the hypervisor. Each virtual machine contains its own kernel and operating system, making workloads largely independent of one another. Problems affecting one virtual machine are less likely to impact neighboring virtual machines because they execute within separate operating system environments.
Docker containers isolate processes using Linux namespaces, cgroups, and other operating system features. Although containers remain separated from one another, they ultimately depend on the same host kernel, making kernel security especially important.
Operating System Security
Every VMware virtual machine maintains its own operating system, allowing administrators to configure security policies, patch operating systems independently, and customize security settings for different workloads.
Docker simplifies operating system management because only the host operating system requires kernel updates. However, protecting the shared kernel becomes critical because vulnerabilities at that level may potentially affect multiple containers running on the same host.
Attack Surface
Docker containers often contain smaller runtime environments than traditional virtual machines, reducing the number of installed packages and potentially lowering the attack surface. At the same time, insecure container images, excessive privileges, or outdated runtimes can introduce vulnerabilities if operational practices are weak.
VMware virtual machines generally include complete operating systems, increasing the amount of software that must be patched and maintained. Their stronger isolation, however, remains valuable for highly sensitive workloads.
Multi-Tenant Environments
Organizations hosting workloads for multiple business units or customers often prioritize strong isolation. VMware naturally supports this through independent virtual machines, making it well-suited for enterprise virtualization and private cloud environments.
Docker also supports multi-tenant deployments successfully, particularly when combined with Kubernetes security policies, runtime protections, and container security tools. These environments typically require additional security controls compared to standalone virtual machines.
| Security Area | VMware | Docker |
|---|---|---|
| Isolation | Hardware-level virtualization | Operating system-level isolation |
| Operating System | Independent guest operating systems | Shared host kernel |
| Attack Surface | Larger operating system footprint | Smaller runtime environment |
| Multi-Tenancy | Strong default isolation | Requires additional runtime controls |
Docker and VMware in Modern Cloud Infrastructure
Modern cloud platforms rarely require organizations to choose exclusively between Docker and VMware. Instead, both technologies frequently operate together within the same production environment, each solving a different layer of the infrastructure stack. VMware provides stable virtualized infrastructure, while Docker delivers efficient application packaging and deployment. This layered architecture has become common across enterprise cloud environments.
Understanding how these technologies complement one another is often more valuable than comparing them as competing products.
VMware in Enterprise Infrastructure
VMware continues to power private clouds, enterprise data centers, and mission-critical infrastructure throughout many industries. Organizations rely on VMware for server consolidation, disaster recovery, workload migration, and operating system virtualization while maintaining mature operational processes developed over many years.
Many enterprises continue running large numbers of business-critical applications inside VMware environments because of their stability, tooling, and extensive ecosystem.
Docker in Cloud-Native Development
Docker has become one of the defining technologies behind cloud-native software development. Containers simplify application packaging, support continuous integration pipelines, and provide consistent deployments across development, testing, and production environments.
Microservices, APIs, AI services, and Kubernetes clusters commonly rely on Docker images as their standard deployment format because of their portability and efficiency.
Containers Running Inside Virtual Machines
One of the most common production architectures combines both technologies. VMware virtual machines provide isolated infrastructure, while Docker containers execute applications inside those virtual machines. This layered approach combines strong infrastructure isolation with lightweight application deployment.
Many managed Kubernetes platforms ultimately operate using this architecture, even though developers primarily interact with containers rather than the underlying virtual machines.
Hybrid Cloud Environments
Organizations adopting hybrid cloud strategies frequently maintain VMware-based private infrastructure while deploying Docker containers across public cloud services. This allows businesses to modernize application deployment gradually without replacing existing virtualization investments immediately.
The coexistence of both technologies demonstrates that they solve complementary infrastructure problems rather than competing directly.
| Infrastructure Layer | Primary Technology |
|---|---|
| Enterprise Virtualization | VMware |
| Cloud-Native Applications | Docker |
| Kubernetes Workloads | Docker |
| Private Cloud Infrastructure | VMware |
| Hybrid Deployments | VMware and Docker Together |
When to Choose Docker vs VMware
The decision between Docker and VMware should be guided by workload requirements rather than technology trends. Both platforms provide valuable capabilities, but they optimize for different architectural priorities. Docker emphasizes application portability and deployment efficiency, while VMware emphasizes infrastructure virtualization and operating system isolation.
Many production systems deliberately use both technologies because each addresses a different layer of modern infrastructure.
When Docker Is the Better Choice
Docker is an excellent choice for cloud-native applications, microservices, REST APIs, CI/CD pipelines, and rapidly evolving software systems. Containers provide consistent deployment environments while allowing applications to start quickly and scale efficiently.
Organizations practicing DevOps and continuous delivery often benefit significantly from Docker because applications move predictably between development, testing, and production with minimal environmental differences.
When VMware Is the Better Choice
VMware remains the preferred solution for workloads requiring multiple operating systems, strong workload isolation, legacy enterprise software, or mature virtualization capabilities. Organizations with large existing virtualization environments often continue relying on VMware because it provides stable infrastructure together with sophisticated operational tooling.
Applications that depend on specialized operating system configurations also naturally fit within VMware environments.
When Organizations Use Both
Many organizations deploy Docker containers inside VMware virtual machines. VMware provides secure infrastructure boundaries, while Docker packages and manages applications efficiently inside those environments.
Rather than replacing VMware, Docker frequently enhances virtualization by modernizing the application deployment process without fundamentally changing the underlying infrastructure.
| Scenario | Better Choice |
|---|---|
| Microservices | Docker |
| CI/CD Pipelines | Docker |
| Legacy Enterprise Applications | VMware |
| Multiple Operating Systems | VMware |
| Enterprise Cloud Platforms | Often Both Together |
Common Misconceptions
Docker and VMware are often discussed together, which has led to several misconceptions about how they relate to one another. Many of these misunderstandings arise from comparing containers directly with virtual machines even though they represent different layers of the infrastructure stack. Understanding these misconceptions helps engineers make architectural decisions based on technical requirements rather than oversimplified comparisons.
Successful infrastructure design begins by recognizing the unique strengths of each technology.
Docker Replaces VMware
One common misconception is that Docker completely replaces VMware. In reality, many organizations continue running Docker workloads inside VMware virtual machines because the technologies solve different problems.
VMware virtualizes infrastructure, while Docker standardizes application deployment. Using both together often provides the greatest flexibility.
Docker Containers Are Virtual Machines
Containers and virtual machines both isolate workloads, but they achieve this isolation differently. Virtual machines emulate complete computers with independent operating systems, whereas containers isolate application processes while sharing the host operating system kernel.
Although the user experience may appear similar, the underlying architecture differs substantially.
VMware Is Outdated
VMware continues to play a central role in enterprise infrastructure despite the growth of containers. Large organizations depend on VMware for virtualization, disaster recovery, private cloud environments, and workloads requiring strong operating system isolation.
Container adoption has expanded infrastructure options rather than eliminating virtualization.
Docker Is Always Faster
Docker containers typically start more quickly and consume fewer resources than virtual machines, but overall application performance depends on many factors including workload characteristics, networking, storage, and resource allocation.
Choosing technology solely on startup speed rarely produces the best long-term architecture.
Every Application Should Run in Docker
Not every application benefits from containerization. Legacy enterprise software, applications requiring different operating systems, or workloads with strict compliance requirements may remain better suited to VMware virtual machines.
Infrastructure decisions should reflect application requirements rather than assuming containers are universally preferable.
| Misconception | Reality |
|---|---|
| Docker replaces VMware | They solve different infrastructure problems |
| Containers are virtual machines | They use different architectures |
| VMware is outdated | It remains widely deployed in enterprises |
| Docker is always faster | Performance depends on workload |
| Every application should use Docker | Workload requirements determine the best choice |
Docker vs VMware in System Design Interviews
Docker and VMware frequently appear in System Design interviews covering cloud architecture, platform engineering, DevOps, and infrastructure design. Interviewers are generally less interested in product-specific features than in understanding how candidates evaluate deployment strategies, workload isolation, scalability, and operational tradeoffs. Explaining when each technology is appropriate demonstrates stronger architectural reasoning than simply recommending the newest platform.
Good interview discussions focus on engineering decisions rather than technology preferences.
When to Discuss Docker or VMware
Discussions about cloud migration, Kubernetes adoption, infrastructure modernization, deployment automation, or hybrid cloud environments naturally create opportunities to compare Docker and VMware. Candidates should explain how infrastructure requirements influence technology selection rather than presenting one solution as universally better.
Understanding where each technology fits within a larger architecture often leads to stronger interview answers.
What Interviewers Evaluate
Interviewers typically assess whether candidates understand workload characteristics, infrastructure efficiency, portability, security, operational complexity, and long-term maintainability. They expect candidates to justify deployment decisions using business and technical requirements instead of relying on popularity.
Balanced reasoning demonstrates stronger architectural maturity than feature comparisons alone.
Common Candidate Mistakes
A frequent mistake is assuming Docker completely replaces VMware or recommending containers without considering operating system requirements, security constraints, or enterprise infrastructure. Others compare startup speed while overlooking operational tooling, disaster recovery, or infrastructure management.
Successful candidates recognize that modern production systems often combine both technologies effectively.
| Interview Topic | What Interviewers Evaluate |
|---|---|
| Deployment Strategy | Appropriate infrastructure selection |
| Scalability | Efficient workload management |
| Security | Isolation and operational risk |
| Tradeoff Analysis | Balanced architectural reasoning |
| Communication | Clear explanation of technology choices |
Frequently Asked Questions About Docker vs VMware
Docker and VMware are frequently compared because both improve infrastructure utilization, but they achieve this goal through fundamentally different architectural approaches. Engineers evaluating cloud-native platforms, virtualization technologies, or deployment strategies often ask similar questions about when each technology should be used and whether one replaces the other.
Understanding these questions helps connect infrastructure concepts with real production architectures.
Is Docker the same as VMware?
No. VMware virtualizes hardware to create complete virtual machines, while Docker containerizes applications by sharing the host operating system kernel.
Although both isolate workloads, they operate at different layers of the infrastructure stack.
Can Docker replace VMware?
Not entirely. Docker replaces certain application deployment workflows, but VMware continues to provide operating system virtualization, infrastructure isolation, and enterprise virtualization capabilities.
Many organizations successfully use Docker and VMware together rather than replacing one with the other.
Which is faster, Docker or VMware?
Docker containers generally start faster and consume fewer resources because they do not boot separate operating systems. Virtual machines require additional initialization and infrastructure overhead.
Overall application performance, however, depends on workload characteristics rather than startup speed alone.
Is Docker more secure than VMware?
Neither technology is universally more secure. VMware typically provides stronger isolation through independent operating systems, while Docker emphasizes lightweight application isolation and depends heavily on host kernel security.
Security depends on workload requirements, configuration quality, and operational practices.
Can Docker run inside VMware?
Yes. This is one of the most common deployment architectures in enterprise environments. VMware provides virtualized infrastructure while Docker manages application deployment inside virtual machines.
Many Kubernetes clusters ultimately operate using this layered approach.
Should enterprises still use VMware?
Yes. VMware remains widely used for enterprise virtualization, disaster recovery, private cloud infrastructure, and workloads requiring strong operating system isolation.
Its mature management capabilities continue to provide significant value for many organizations.
When should you choose Docker?
Docker is an excellent choice for cloud-native applications, microservices, CI/CD pipelines, and rapidly deployed services that benefit from portability and efficient resource utilization.
It has become the standard deployment model for many modern distributed applications.
Why do organizations use both Docker and VMware together?
Using VMware and Docker together combines infrastructure virtualization with lightweight application deployment. VMware manages hardware resources and operating system isolation, while Docker simplifies application packaging and deployment.
This layered architecture allows organizations to modernize applications without replacing existing virtualization infrastructure.
| Question | Short Answer |
|---|---|
| Is Docker the same as VMware? | No |
| Can Docker replace VMware? | Not completely |
| Which is faster? | Docker generally starts faster |
| Is Docker more secure? | It depends on workload requirements |
| Can Docker run inside VMware? | Yes |
| Why use both together? | They solve complementary problems |
Final Thoughts
Docker and VMware are often presented as competing technologies, but modern infrastructure shows that they address different architectural challenges. VMware provides mature hardware virtualization, strong workload isolation, and enterprise infrastructure management, making it an excellent foundation for running diverse operating systems and mission-critical applications. Docker focuses on application portability, rapid deployment, and efficient resource utilization, making it the preferred choice for cloud-native software, microservices, and continuous delivery workflows.
Understanding the relationship between these technologies is essential for cloud architecture, platform engineering, DevOps, and System Design. Rather than asking which technology is universally better, successful architects evaluate workload requirements, operational maturity, security needs, and long-term infrastructure goals before selecting the appropriate deployment model. In many production environments, the most effective solution is not Docker or VMware, but a combination of both that leverages the strengths of each technology.
- Updated 19 hours ago
- Fahim
- 21 min read