content/manuals/enterprise/security/hardened-desktop/settings-management/settings-reference.md
This reference documents all Docker Desktop settings and configuration options. Use this to understand setting behavior across different configuration methods and platforms. It is organized to match the Docker Desktop GUI structure.
Each setting includes:
admin-settings.json file, or CLI)| Default value | Accepted values | Format |
|---|---|---|
false | true, false | Boolean |
| Default value | Accepted values | Format |
|---|---|---|
false | true, false | Boolean |
| Default value | Accepted values | Format |
|---|---|---|
system | light, dark, system | Enum |
| Default value | Accepted values | Format |
|---|---|---|
integrated | integrated, system | String |
| Default value | Accepted values | Format |
|---|---|---|
integrated | integrated, system | String |
| Default value | Accepted values | Format |
|---|---|---|
false | true, false | Boolean |
false, users can't use the Docker terminal to interact
with the host machine and execute commands directly from Docker Desktop.desktopTerminalEnabled setting in the admin-settings.json file[!NOTE]
In hardened environments, disable and lock this setting to limit host access.
| Default value | Accepted values | Format |
|---|---|---|
false | true, false | Boolean |
| Default value | Accepted values | Format |
|---|---|---|
false | true, false | Boolean |
| Default value | Accepted values | Format |
|---|---|---|
false | true, false | Boolean |
| Default value | Accepted values | Format |
|---|---|---|
true | true, false | Boolean |
| Default value | Accepted values | Format |
|---|---|---|
true | true, false | Boolean |
| Default value | Accepted values | Format |
|---|---|---|
true | true, false | Boolean |
amd64 on Apple Silicon. If value
is set to true, Docker Desktop turns on Rosetta to accelerate
x86_64/amd64 binary emulation on Apple Silicon.useVirtualizationFrameworkRosetta setting in the admin-settings.json file[!NOTE]
In hardened environments, disable and lock this setting so only ARM-native images are permitted.
[!NOTE]
Rosetta requires enabling Apple Virtualization framework.
[!WARNING]
QEMU has been deprecated in Docker Desktop versions 4.44 and later. For more information, see the blog announcement
| Default value | Accepted values | Format |
|---|---|---|
true | true, false | Boolean |
| Default value | Accepted values | Format |
|---|---|---|
true | true, false | Boolean |
true, VirtioFS is set as the file sharing
mechanism. If both VirtioFS and gRPC are set to true, VirtioFS takes
precedence.useVirtualizationFrameworkVirtioFS setting in the admin-settings.json file[!NOTE]
In hardened environments, enable and lock this setting for macOS 12.5 and later.
| Default value | Accepted values | Format |
|---|---|---|
true | true, false | Boolean |
true, gRPC Fuse is set as the file sharing mechanism.useGrpcfuse setting in the admin-settings.json file[!NOTE]
In hardened environments, disable and lock this setting.
| Default value | Accepted values | Format |
|---|---|---|
false | true, false | Boolean |
| Default value | Accepted values | Format |
|---|---|---|
true | true, false | Boolean |
analyticsEnabled setting in the admin-settings.json file[!NOTE]
In hardened environments, disable and lock this setting. This allows you to control all your data flows and collect support logs via secure channels if needed.
[!NOTE]
Organizations using the Insights Dashboard may need this setting enabled to ensure that developer activity is fully visible. If users opt out and the setting is not locked, their activity may be excluded from analytics views.
| Default value | Accepted values | Format |
|---|---|---|
false | true, false | Boolean |
enhancedContainerIsolation setting in the admin-settings.json file[!NOTE]
In hardened environments, disable and lock this setting. This allows you to control all your data flows and collect support logs via secure channels if needed.
| Default value | Accepted values | Format |
|---|---|---|
true | true, false | Boolean |
| Default value | Accepted values | Format |
|---|---|---|
true | true, false | Boolean |
sbomIndexing setting in the admin-settings.json file[!NOTE]
In hardened environments, enable and lock this setting to ensure compliance scanning is always available.
| Default value | Accepted values | Format |
|---|---|---|
false | true, false | Boolean |
[!NOTE]
In hardened environments, enable and lock this setting for continuous security analysis.
| Default value | Accepted values | Format |
|---|---|---|
CurrentSettingsVersions | Integer | Integer |
configurationFileVersion setting in the admin-settings.json file| Default value | Accepted values | Format |
|---|---|---|
| Number of logical CPU cores available on host | Integer | Integer |
| Default value | Accepted values | Format |
|---|---|---|
| Based on system resources | Integer | Integer |
| Default value | Accepted values | Format |
|---|---|---|
1024 | Integer | Integer |
| Default value | Accepted values | Format |
|---|---|---|
| Default disk size of machine. | Integer | Integer |
| Default value | Accepted values | Format |
|---|---|---|
macOS: ~/Library/Containers/com.docker.docker/Data/vms/0 | ||
Windows: %USERPROFILE%\AppData\Local\Docker\wsl\data | File path | String |
| Default value | Accepted values | Format |
|---|---|---|
true | true, false | Boolean |
| Default value | Accepted values | Format |
|---|---|---|
| Varies by OS | List of file paths as strings | Array list of strings |
filesharingAllowedDirectories setting in the admin-settings.json file[!NOTE]
In hardened environments, lock to an explicit allowlist and disable end-user edits.
| Default value | Accepted values | Format |
|---|---|---|
"" | List of addresses | String |
proxy setting with manual and exclude modes in the admin-settings.json file[!NOTE]
In hardened environments, disable and lock this setting to maintain strict proxy control.
| Default value | Accepted values | Format |
|---|---|---|
192.168.65.0/24 | IP address | String |
*.docker.internal.vpnkitCIDR setting in the admin-settings.json file| Default value | Accepted values | Format |
|---|---|---|
false | true, false | Boolean |
| Default value | Accepted values | Format |
|---|---|---|
false | true, false | Boolean |
| Default value | Accepted values | Format |
|---|---|---|
dual-stack | ipv4only, ipv6only | String |
defaultNetworkingMode setting in the admin-settings.json fileFor more information, see Networking.
| Default value | Accepted values | Format |
|---|---|---|
auto | ipv4, ipv6, none | String |
dnsInhibition setting in the admin-settings.json fileFor more information, see Networking.
| Default value | Accepted values | Format |
|---|---|---|
true | true, false | Boolean |
true, Docker Desktop uses the WSL2
based engine. This overrides anything that may have been set at installation
using the --backend=<backend name> flag.wslEngineEnabled setting in the admin-settings.json file[!NOTE]
In hardened environments, enable and lock this setting for improved security and performance.
The Docker Engine settings let you configure low-level daemon settings through a raw JSON object. These settings are passed directly to the dockerd process that powers container management in Docker Desktop.
| Key | Example | Description | Accepted values / Format | Default |
|---|---|---|---|---|
debug | true | Enable verbose logging in the Docker daemon | Boolean | false |
experimental | true | Enable experimental Docker CLI and daemon features | Boolean | false |
insecure-registries | ["myregistry.local:5000"] | Allow pulling from HTTP registries without TLS | Array of strings (host:port) | [] |
registry-mirrors | ["https://mirror.gcr.io"] | Define alternative registry endpoints | Array of URLs | [] |
[!NOTE]
In hardened environments, provide a vetted configuration and lock it to prevent unauthorized daemon modifications.
[!IMPORTANT]
Values for this setting are passed as-is to the Docker daemon. Invalid or unsupported fields may prevent Docker Desktop from starting.
Builders settings lets you manage Buildx builder instances for advanced image-building scenarios, including multi-platform builds and custom backends.
| Key | Example | Description | Accepted values / Format | Default |
|---|---|---|---|---|
name | "my-builder" | Name of the builder instance | String | — |
driver | "docker-container" | Backend used by the builder (docker, docker-container, remote, etc.) | String | docker |
platforms | ["linux/amd64", "linux/arm64"] | Target platforms supported by the builder | Array of platform strings | Host arch |
[!NOTE]
Builder definitions are structured as an array of objects, each describing a builder instance. Conflicting or unsupported configurations may cause build errors.
| Default value | Accepted values | Format |
|---|---|---|
true | true, false | Boolean |
enableInference setting in the admin-settings.json file| Default value | Accepted values | Format |
|---|---|---|
false | true, false | Boolean |
enableInferenceTCP setting in the admin-settings.json file[!NOTE]
This setting requires Docker Model Runner setting to be enabled first.
| Default value | Accepted values | Format |
|---|---|---|
| 12434 | Integer | Integer |
enableInferenceTCPPort setting in the admin-settings.json file[!NOTE]
This setting requires Docker Model Runner and host-side TCP support settings to be enabled first.
| Default value | Accepted values | Format |
|---|---|---|
| Empty string | Empty string to deny all,* to accept all, or a list of comma-separated values | String |
enableInferenceCORS setting in the admin-settings.json file[!NOTE]
This setting requires Docker Model Runner and host-side TCP support settings to be enabled first.
| Default value | Accepted values | Format |
|---|---|---|
false | true, false | Boolean |
enableInferenceGPUVariant setting in the admin-settings.json file| Default value | Accepted values | Format |
|---|---|---|
false | true, false | Boolean |
kubernetes setting in the admin-settings.json file[!NOTE]
In hardened environments, disable and lock this setting unless Kubernetes development is specifically required.
[!IMPORTANT]
When Kubernetes is enabled through Settings Management policies, only the
kubeadmcluster provisioning method is supported. Thekindprovisioning method is not yet supported by Settings Management.
| Default value | Accepted values | Format |
|---|---|---|
kubeadm | kubeadm, kind | String |
kubeadm) or multi-node (kind)` cluster configurations for different development needs.| Default value | Accepted values | Format |
|---|---|---|
1 | Integer | Integer |
| Default value | Accepted values | Format |
|---|---|---|
1.31.1 | Semantic version (e.g., 1.29.1) | String |
| Default value | Accepted values | Format |
|---|---|---|
false | true, false | Boolean |
[!NOTE]
In hardened environments, disable and lock this setting to reduce interface complexity.
| Default value | Accepted values | Format |
|---|---|---|
false | true, false | Boolean |
true, checking for updates and notifications about Docker
Desktop updates are disabled.disableUpdate setting in the admin-settings.json file[!NOTE]
In hardened environments, enable this setting and lock. This guarantees that only internally vetted versions are installed.
| Default value | Accepted values | Format |
|---|---|---|
false | true, false | Boolean |
| Default value | Accepted values | Format |
|---|---|---|
true | true, false | Boolean |
silentModulesUpdate setting in the admin-settings.json file| Default value | Accepted values | Format |
|---|---|---|
true | true, false | Boolean |
extensionsEnabled setting in the admin-settings.json file[!NOTE]
In hardened environments, disable and lock this setting. This prevents third-party or unvetted plugins from being installed.
| Default value | Accepted values | Format |
|---|---|---|
false | true, false | Boolean |
onlyMarketplaceExtensions setting in the admin-settings.json file| Default value | Accepted values | Format |
|---|---|---|
false | true, false | Boolean |
extensionsPrivateMarketplace setting in the admin-settings.json file| Default value | Accepted values | Format |
|---|---|---|
false | true, false | Boolean |
[!IMPORTANT]
For Docker Desktop versions 4.41 and earlier, these settings were under the Experimental features tab on the Features in development page.
| Default value | Accepted values | Format |
|---|---|---|
false | Individual users: true, false | |
Business tier: "Disabled", "Enabled", "Always Enabled" | Boolean for individuals | |
| Toggle in Admin Console |
enableDockerAI setting in the admin-settings.json file[!IMPORTANT]
Docker Business customers must set this to
"Enabled"or"Always Enabled"in the Admin Console. Setting to"User Defined"alone will not activate Gordon features. This secure-by-default approach prevents unintended deployment of AI features in security-conscious organizations.
| Default value | Accepted values | Format |
|---|---|---|
true | true, false | Boolean |
enableDockerMCPToolkit setting in the admin-settings.json file| Default value | Accepted values | Format |
|---|---|---|
false | true, false | Boolean |
enableCloud setting in the admin-settings.json file[!NOTE]
This setting is only available when Docker Offload capability is enabled for the organization.
| Default value | Accepted values | Format |
|---|---|---|
false | true, false | Boolean |
| Default value | Accepted values | Format |
|---|---|---|
true | true, false | Boolean |
| Default value | Accepted values | Format |
|---|---|---|
true | true, false | Boolean |
| Default value | Accepted values | Format |
|---|---|---|
true | true, false | Boolean |
| Default value | Accepted values | Format |
|---|---|---|
true | true, false | Boolean |
| Default value | Accepted values | Format |
|---|---|---|
true | true, false | Boolean |
| Default value | Accepted values | Format |
|---|---|---|
false | true, false | Boolean |
| Default value | Accepted values | Format |
|---|---|---|
system | File path | String |
| Default value | Accepted values | Format |
|---|---|---|
true | true, false | Boolean |
docker run -v /var/run/docker.sock:/var/run/docker.sock ...). This lets
you relax this in a controlled way. See ECI Configuration for more info.dockerSocketMount setting in the admin-settings.json file| Default value | Accepted values | Format |
|---|---|---|
true | true, false | Boolean |
The following settings aren’t shown in the Docker Desktop GUI. You can only configure them using Settings Management with the Admin Console or the admin-settings.json file.
docker load| Default value | Accepted values | Format |
|---|---|---|
false | true, false | Boolean |
docker load command.blockDockerLoad setting in the admin-settings.json file[!NOTE]
In hardened environments, enable and lock this setting. This forces all images to come from your secure, scanned registry.
| Default value | Accepted values | Format |
|---|---|---|
false | true, false | Boolean |
displayedOnboarding setting in the admin-settings.json file| Default value | Accepted values | Format |
|---|---|---|
false | true, false | Boolean |
exposeDockerAPIOnTCP2375 in the admin-settings.json file[!NOTE]
In hardened environments, disable and lock this setting. This ensures the Docker API is only reachable via the secure internal socket.
| Default value | Accepted values | Format |
|---|---|---|
| See example | Object | JSON object |
containersProxy setting in the admin-settings.json file"containersProxy": {
"locked": true,
"mode": "manual",
"http": "",
"https": "",
"exclude": [],
"pac": "",
"transparentPorts": ""
}
| Default value | Accepted values | Format |
|---|---|---|
| - | Object | JSON object |
enhancedContainerIsolation > dockerSocketMount in the admin-settings.json file"enhancedContainerIsolation": {
"locked": true,
"value": true,
"dockerSocketMount": {
"imageList": {
"images": [
"docker.io/localstack/localstack:*",
"docker.io/testcontainers/ryuk:*"
]
},
"commandList": {
"type": "deny",
"commands": ["push"]
}
}
}
| Default value | Accepted values | Format |
|---|---|---|
false | true, false | Boolean |
allowBetaFeatures setting in the admin-settings.json file[!NOTE]
In hardened environments, disable and lock this setting.
| Default value | Accepted values | Format |
|---|---|---|
{} | JSON object | Stringified JSON |
linuxVM.dockerDaemonOptions or windowsContainers.dockerDaemonOptions in the admin-settings.json file[!NOTE]
In hardened environments, provide a vetted JSON config and lock it so no overrides are possible.
| Default value | Accepted values | Format |
|---|---|---|
192.168.65.0/24 | CIDR notation | String |
vpnkitCIDR setting in the admin-settings.json file[!NOTE]
In hardened environments, lock to an approved, non-conflicting CIDR.
| Default value | Accepted values | Format |
|---|---|---|
false | true, false | Boolean |
proxy.enableKerberosNtlm in the admin-settings.json file| Default value | Accepted values | Format |
|---|---|---|
"" | PAC file URL | String |
"pac": "http://proxy/proxy.pac".pac in the admin-settings.json file| Default value | Accepted values | Format |
|---|---|---|
"" | Embedded PAC script | String |
"embeddedPac": "function FindProxyForURL(url, host) { return \"DIRECT\"; }".embeddedPac in the admin-settings.json file| Default value | Accepted values | Format |
|---|---|---|
"" | Registry URL | String |
[registry[:port]/][namespace] portion of image names.KubernetesImagesRepository settings in the
admin-settings.json file[!NOTE]
Images must be mirrored from Docker Hub with matching tags. Required images depend on the cluster provisioning method.
[!IMPORTANT]
When using custom image repositories with Enhanced Container Isolation, add these images to the ECI allowlist:
[imagesRepository]/desktop-cloud-provider-kind:*and[imagesRepository]/desktop-containerd-registry-mirror:*.