Change settings (original) (raw)

Change your Docker Desktop settings

To navigate to Settings either:

You can also locate the settings-store.json file (or settings.json for Docker Desktop versions 4.34 and earlier) at:

On the General tab, you can configure when to start Docker and specify other settings:

The Resources tab allows you to configure CPU, memory, disk, proxies, network, and other resources.

Advanced

On Windows, the Resource allocation options in the Advanced tab are only available in Hyper-V mode, because Windows manages the resources in WSL 2 mode and Windows container mode. In WSL 2 mode, you can configure limits on the memory, CPU, and swap size allocated to the WSL 2 utility VM.

On the Advanced tab, you can limit resources available to the Docker Linux VM.

Advanced settings are:

If you feel Docker Desktop starting to get slow or you're running multi-container workloads, increase the memory and disk image space allocation

File sharing

On Windows, the File sharing tab is only available in Hyper-V mode because the files are automatically shared in WSL 2 mode and Windows container mode.

Use File sharing to allow local directories on your machine to be shared with Linux containers. This is especially useful for editing source code in an IDE on the host while running and testing the code in a container.

Synchronized file shares

Synchronized file shares is an alternative file sharing mechanism that provides fast and flexible host-to-VM file sharing, enhancing bind mount performance through the use of synchronized filesystem caches. Available with Pro, Team, and Business subscriptions.

To learn more, seeSynchronized file share.

Virtual file shares

By default the /Users, /Volumes, /private, /tmp and /var/folders directory are shared. If your project is outside this directory then it must be added to the list, otherwise you may get Mounts denied or cannot start service errors at runtime.

File share settings are:

For more information, seeVolume mounting requires file sharing for any project directories outside of /Users

Shared folders on demand

On Windows, you can share a folder "on demand" the first time a particular folder is used by a container.

If you run a Docker command from a shell with a volume mount (as shown in the example below) or kick off a Compose file that includes volume mounts, you get a popup asking if you want to share the specified folder.

You can select to Share it, in which case it is added to your Docker Desktop Shared Folders list and available to containers. Alternatively, you can opt not to share it by selecting Cancel.

Shared folder on demand

Shared folder on demand

Proxies

Docker Desktop supports the use of HTTP/HTTPS andSOCKS5 proxies.

HTTP/HTTPS proxies can be used when:

If the host uses a HTTP/HTTPS proxy configuration (static or via Proxy Auto-Configuration (PAC)), Docker Desktop reads this configuration and automatically uses these settings for signing in to Docker, for pulling and pushing images, and for container Internet access. If the proxy requires authorization then Docker Desktop dynamically asks the developer for a username and password. All passwords are stored securely in the OS credential store. Note that only the Basic proxy authentication method is supported so we recommend using an https://URL of your HTTP/HTTPS proxies to protect passwords while in transit on the network. Docker Desktop supports TLS 1.3 when communicating with proxies.

To set a different proxy for Docker Desktop, turn on Manual proxy configuration and enter a single upstream proxy URL of the form http://proxy:port or https://proxy:port.

To prevent developers from accidentally changing the proxy settings, seeSettings Management.

The HTTPS proxy settings used for scanning images are set using the HTTPS_PROXY environment variable.

If you are using a PAC file hosted on a web server, make sure to add the MIME type application/x-ns-proxy-autoconfig for the .pac file extension on the server or website. Without this configuration, the PAC file may not be parsed correctly. For more details on PAC files and Docker Desktop, seeHardened Docker Desktop

You cannot configure the proxy settings using the Docker daemon configuration file (daemon.json), and we recommend you do not configure the proxy settings via the Docker CLI configuration file (config.json).

To manage proxy configurations for Docker Desktop, configure the settings in the Docker Desktop app or useSettings Management.

Proxy authentication

Basic authentication

If your proxy uses Basic authentication, Docker Desktop prompts developers for a username and password and caches the credentials. All passwords are stored securely in the OS credential store. It will request re-authentication if that cache is removed.

It's recommended that you use an https:// URL of HTTP/HTTPS proxies to protect passwords during network transit. Docker Desktop also supports TLS 1.3 for communication with proxies.

Kerberos and NTLM authentication

Available for Docker Business subscribers with Docker Desktop for Windows version 4.30 and later.

Developers are no longer interrupted by prompts for proxy credentials as authentication is centralized. This also reduces the risk of account lockouts due to incorrect sign in attempts.

If your proxy offers multiple authentication schemes in 407 (Proxy Authentication Required) response, Docker Desktop by default selects the Basic authentication scheme.

For Docker Desktop version 4.30 to 4.31:

To enable Kerberos or NTLM proxy authentication, no additional configuration is needed beyond specifying the proxy IP address and port.

For Docker Desktop version 4.32 and later:

To enable Kerberos or NTLM proxy authentication you must pass the --proxy-enable-kerberosntlm installer flag during installation via the command line, and ensure your proxy server is properly configured for Kerberos or NTLM authentication.

Network

On Windows, the Network tab isn't available in the Windows container mode because Windows manages networking.

Docker Desktop uses a private IPv4 network for internal services such as a DNS server and an HTTP proxy. In case Docker Desktop's choice of subnet clashes with IPs in your environment, you can specify a custom subnet using the Network setting.

On Windows and Mac, you can also set the default networking mode and DNS resolution behavior. For more information, seeNetworking.

On Mac, you can also select the Use kernel networking for UDP setting. This lets you use a more efficient kernel networking path for UDP. This may not be compatible with your VPN software.

WSL Integration

On Windows in WSL 2 mode, you can configure which WSL 2 distributions will have the Docker WSL integration.

By default, the integration is enabled on your default WSL distribution. To change your default WSL distribution, run wsl --set-default <distribution name>. (For example, to set Ubuntu as your default WSL distribution, run wsl --set-default ubuntu).

You can also select any additional distributions you would like to enable the WSL 2 integration on.

For more details on configuring Docker Desktop to use WSL 2, seeDocker Desktop WSL 2 backend.

The Docker Engine tab allows you to configure the Docker daemon used to run containers with Docker Desktop.

You configure the daemon using a JSON configuration file. Here's what the file might look like:

You can find this file at $HOME/.docker/daemon.json. To change the configuration, either edit the JSON configuration directly from the dashboard in Docker Desktop, or open and edit the file using your favorite text editor.

To see the full list of possible configuration options, see thedockerd command reference.

Select Apply to save your settings.

If you have turned on theDocker Desktop Builds view, you can use theBuilders tab to inspect and manage builders in the Docker Desktop settings.

Inspect

To inspect builders, find the builder that you want to inspect and select the expand icon. You can only inspect active builders.

Inspecting an active builder shows:

Select a different builder

The Selected builder section displays the selected builder. To select a different builder:

  1. Find the builder that you want to use under Available builders
  2. Open the drop-down menu next to the builder's name.
  3. Select Use to switch to this builder.

Your build commands now use the selected builder by default.

Create a builder

To create a builder, use the Docker CLI. SeeCreate a new builder

Remove a builder

You can remove a builder if:

To remove a builder:

  1. Find the builder that you want to remove under Available builders
  2. Open the drop-down menu.
  3. Select Remove to remove this builder.

If the builder uses the docker-container or kubernetes driver, the build cache is also removed, along with the builder.

Stop and start a builder

Builders that use thedocker-container driverrun the BuildKit daemon in a container. You can start and stop the BuildKit container using the drop-down menu.

Running a build automatically starts the container if it's stopped.

You can only start and stop builders using the docker-container driver.

On Windows the Kubernetes tab is not available in Windows container mode.

Docker Desktop includes a standalone Kubernetes server, so that you can test deploying your Docker workloads on Kubernetes. To turn on Kubernetes support and install a standalone instance of Kubernetes running as a Docker container, select Enable Kubernetes.

With Docker Desktop version 4.38 and later, you can choose your cluster provisioning method:

Select Show system containers (advanced) to view internal containers when using Docker commands.

Select Reset Kubernetes cluster to delete all stacks and Kubernetes resources.

For more information about using the Kubernetes integration with Docker Desktop, seeDeploy on Kubernetes.

The Software updates tab lets you manage your Docker Desktop updates. When there's a new update, you can choose to download the update right away, or select the Release Notes option to learn what's included in the updated version.

The Automatically check for updates setting notifies you of any updates available to Docker Desktop in the Docker menu and the footer of the Docker Desktop Dashboard. This is turned on by default.

To allow Docker Desktop to automatically download new updates in the background, select Always download updates. This downloads newer versions of Docker Desktop when an update becomes available. After downloading the update, selectApply and restart to install the update. You can do this either through the Docker menu or in the Updates section in the Docker Desktop Dashboard.

The Automatically update components setting checks whether components of Docker Desktop, such as Docker Compose, Docker Scout, and the Docker CLI, can be updated independently without the need for a full restart. This is turned on by default.

Use the Extensions tab to:

For more information about Docker extensions, seeExtensions.

Beta features provide access to future product functionality. These features are intended for testing and feedback only as they may change between releases without warning or remove them entirely from a future release. Beta features must not be used in production environments. Docker doesn't offer support for beta features.

You can also sign up to the Developer Preview program from the Beta features tab.

For a list of current experimental features in the Docker CLI, see Docker CLI Experimental features.

For Docker Desktop versions 4.41 and earlier, there is also an Experimental features tab under the Features in development page.

As with beta features, experimental features must not be used in production environments. Docker does not offer support for experimental features.

Use the Notifications tab to turn on or turn off notifications for the following events:

By default, all general notifications are turned on. You'll always receive error notifications and notifications about new Docker Desktop releases and updates.

You can alsoconfigure notification settings for Docker Scout-related issues.

Notifications momentarily appear in the lower-right of the Docker Desktop Dashboard and then move to the Notifications drawer which can be accessed from the top-right of the Docker Desktop Dashboard.

On Mac, you can reconfigure your initial installation settings on the Advanced tab:

For more information on each configuration and use case, seePermission requirements.