You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: content/manuals/desktop/settings.md
+3-1Lines changed: 3 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,7 +8,7 @@ aliases:
8
8
- /desktop/settings/mac/
9
9
- /desktop/settings/windows/
10
10
- /desktop/settings/linux/
11
-
weight: 150
11
+
weight: 160
12
12
---
13
13
14
14
To navigate to **Settings** either:
@@ -66,6 +66,8 @@ If you choose the integrated terminal, you can run commands in a running contain
66
66
> Turn this setting on to make Docker Desktop run faster.
67
67
- Alternatively, you can choose **Apple Virtualization framework**, **QEMU** (for Apple Silicon), or **HyperKit** (for Intel Macs). For macOS 12.5 and later, Apple Virtualization framework is the default setting.
68
68
69
+
For more information, see [Virtual Machine Manager](/manuals/desktop/vmm.md).
70
+
69
71
- {{< badge color=blue text="Mac only" >}}**Choose file sharing implementation for your containers**. Choose whether you want to share files using **VirtioFS**, **gRPC FUSE**, or **osxfs (Legacy)**. VirtioFS is only available for macOS 12.5 and later, and is turned on by default.
title: Virtual Machine Manager for Docker Desktop on Mac
3
+
linkTitle: Virtual Machine Manager
4
+
params:
5
+
sidebar:
6
+
badge:
7
+
color: green
8
+
text: New
9
+
keywords: virtualization software, resource allocation, mac, docker desktop, vm monitoring, vm performance, apple silicon
10
+
description: Discover Docker Desktop for Mac's Virtual Machine Manager (VMM) options, including the new Docker VMM for Apple Silicon, offering enhanced performance and efficiency
11
+
weight: 150
12
+
---
13
+
14
+
The Virtual Machine Manager (VMM) in Docker Desktop for Mac is responsible for creating and managing the virtual machine used to run containers. Depending on your system architecture and performance needs, you can choose from multiple VMM options in Docker Desktop's [settings](/manuals/desktop/settings.md#general). This page provides an overview of the available options.
15
+
16
+
## Docker VMM (Beta)
17
+
18
+
Docker VMM is a new, container-optimized hypervisor introduced in Docker Desktop 4.35 and available on Apple Silicon Macs only. Its enhanced speed and resource efficiency makes it an ideal choice for optimizing your workflow.
19
+
20
+
Docker VMM brings exciting advancements specifically tailored for Apple Silicon machines. By optimizing both the Linux kernel and hypervisor layers, Docker VMM delivers significant performance enhancements across common developer tasks.
21
+
22
+
Some key performance enhancements provided by Docker VMM include:
23
+
- Faster I/O operations: With a cold cache, iterating over a large shared filesystem with `find` is 2x faster than when the Apple Virtualization Framework is used.
24
+
- Improved caching: With a warm cache, performance can improve by as much as 25x, even surpassing native Mac operations.
25
+
26
+
These improvements directly impact developers who rely on frequent file access and overall system responsiveness during containerized development. Docker VMM marks a significant leap in speed, enabling smoother workflows and faster iteration cycles.
27
+
28
+
### Known issues
29
+
30
+
As Docker VMM is still in Beta, there are a few known limitations:
31
+
32
+
- Docker VMM does not currently support Rosetta, so emulation of amd64 architectures is slow. Docker is exploring potential solutions.
33
+
- Certain databases, like MongoDB and Cassandra, may fail when using virtiofs with Docker VMM. This issue is expected to be resolved in a future release.
34
+
35
+
## Apple Virtualization Framework
36
+
37
+
The Apple Virtualization Framework is a stable and well-established option for managing virtual machines on Mac. It has been a reliable choice for many Mac users over the years. This framework is best suited for developers who prefer a proven solution with solid performance and broad compatibility.
38
+
39
+
## QEMU (Legacy) for Apple Silicon
40
+
41
+
> [!NOTE]
42
+
>
43
+
> QEMU will be deprecated in a future release.
44
+
45
+
QEMU is a legacy virtualization option for Apple Silicon Macs, primarily supported for older use cases.
46
+
47
+
Docker recommends transitioning to newer alternatives, such as Docker VMM or the Apple Virtualization Framework, as they offer superior performance and ongoing support. Docker VMM, in particular, offers substantial speed improvements and a more efficient development environment, making it a compelling choice for developers working with Apple Silicon.
48
+
49
+
Note that this is not related to using QEMU to emulate non-native architectures in [multi-platform builds](/manuals/build/building/multi-platform.md#qemu).
50
+
51
+
## HyperKit (Legacy) for Intel-based Macs
52
+
53
+
> [!NOTE]
54
+
>
55
+
> HyperKit will be deprecated in a future release.
56
+
57
+
HyperKit is another legacy virtualization option, specifically for Intel-based Macs. Like QEMU, it is still available but considered deprecated. Docker recommends switching to modern alternatives for better performance and to future-proof your setup.
Copy file name to clipboardExpand all lines: content/reference/compose-file/services.md
+4-1Lines changed: 4 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1221,7 +1221,10 @@ There is a performance penalty for applications that swap memory to disk often.
1221
1221
1222
1222
- `none`: Turns off all container networking.
1223
1223
- `host`: Gives the container raw access to the host's network interface.
1224
-
- `service:{name}`: Gives the containers access to the specified service only. For more information, see [Container networks](/manuals/engine/network/_index.md#container-networks).
1224
+
- `service:{name}`: Gives the container access to the specified container by referring to its service name.
1225
+
- `container:{name}`: Gives the container access to the specified container by referring to its container ID.
1226
+
1227
+
For more information container networks, see the [Docker Engine documentation](/manuals/engine/network/_index.md#container-networks).
0 commit comments