Docker for Mac release notes
Estimated reading time: 41 minutes
This page contains information about the new features, improvements, known issues, and bug fixes in Docker Desktop releases.
Important
Starting with Docker Desktop 3.0.0, Stable and Edge releases are combined into a single release stream for all users. Updates to Docker Desktop will now be available automatically as delta updates from the previous version. This means, when there is a newer version of Docker Desktop, it will be automatically downloaded to your machine. All you need to do is to click Update and restart from the Docker menu to install the latest update.
Docker Desktop Community 3.0.4
2021-01-06
Upgrades
Bug fixes and minor changes
- Avoid timeouts during
docker-compose up
by making cache invalidation faster. Fixes docker/for-mac#4957. - Avoid generating a spurious filesystem DELETE event while invalidating caches. Fixes docker/for-mac#5124.
Known issues
- Some DNS addresses fail to resolve within containers based on Alpine Linux 3.13. See docker/for-mac#5020.
Docker Desktop Community 3.0.3
2020-12-21
Bug fixes and minor changes
- Fixed an issue that caused overlapping volume mounts to fail. Fixes docker/for-mac#5157. However, the fixes for docker/for-mac#4957 and docker/for-mac#5124 have been reverted as a result of this change, so those issues are now present again.
Known issues
- Some DNS addresses fail to resolve within containers based on Alpine Linux 3.13. See docker/for-mac#5020.
- There can be timeouts during docker-compose up if there are several services being started. See docker/for-mac#4957 and docker/for-mac#5124.
Docker Desktop Community 3.0.2
2020-12-18
Bug fixes and minor changes
- Avoid timeouts during
docker-compose up
by making cache invalidation faster. Fixes docker/for-mac#4957. - Avoid generating a spurious filesystem DELETE event while invalidating caches. Fixes docker/for-mac#5124.
- It is now possible to share directories in
~/Library
(except Docker Desktop data directories) with a container. Fixes docker/for-mac#5115. - You will now see a performance warning pop-up message if you create a container that shares the
Home
or a userLibrary
directory.
Known issues
- Some DNS addresses fail to resolve within containers based on Alpine Linux 3.13. See docker/for-mac#5020.
Docker Desktop Community 3.0.1
2020-12-11
Bug fixes and minor changes
- Fixed an issue that caused certain directories not to be mountable into containers. Fixes docker/for-mac#5115. See Known issues below.
Known issues
- It is currently not possible to bind mount files within
~/Libary
into a container. See docker/for-mac#5115. - Building an image with BuildKit from a git URL fails when using the form
github.com/org/repo
. To work around this issue, use the formgit://github.com/org/repo
. - Some DNS addresses fail to resolve within containers based on Alpine Linux 3.13. See docker/for-mac#5020.
Docker Desktop Community 3.0.0
2020-12-10
New
- Use of three-digit version number for Docker Desktop releases.
- Starting with Docker Desktop 3.0.0, updates are now much smaller as they will be applied using delta patches. For more information, see Automatic updates.
-
First version of
docker compose
(as an alternative to the existingdocker-compose
). Supports some basic commands but not the complete functionality ofdocker-compose
yet.- Supports the following subcommands:
up
,down
,logs
,build
,pull
,push
,ls
,ps
-
Supports basic volumes, bind mounts, networks, and environment variables
Let us know your feedback by creating an issue in the compose-cli GitHub repository.
- Supports the following subcommands:
- Docker Hub Tool v0.2.0
Upgrades
Bug fixes and minor changes
- Downgraded the kernel to 4.19.121 to reduce the CPU usage of hyperkit. Fixes docker/for-mac#5044
- Avoid caching bad file sizes and modes when using
osxfs
. Fixes docker/for-mac#5045. - Fixed a possible file sharing error where a file may appear to have the wrong size in a container when it is modified on the host. This is a partial fix for docker/for-mac#4999.
- Removed unnecessary log messages which slow down filesystem event injection.
- Re-enabled the experimental SOCKS proxy. Fixes docker/for-mac#5048.
- Fixed an unexpected EOF error when trying to start a non-existing container with
-v /var/run/docker.sock:
. See docker/for-mac#5025. - Display an error message instead of crashing when the application needs write access on specific directories. See docker/for-mac#5068
Known issues
- Building an image with BuildKit from a git URL fails when using the form
github.com/org/repo
. To work around this issue, use the formgit://github.com/org/repo
. - Some DNS addresses fail to resolve within containers based on Alpine Linux 3.13.
Docker Desktop Community 2.5.0.1
2020-11-10
Upgrades
Bug fixes and minor changes
- Fixed an issue that caused Docker Desktop to crash on MacOS 11.0 (Big Sur) when VirtualBox was also installed. See docker/for-mac#4997.
Docker Desktop Community 2.5.0.0
2020-11-02
Docker Desktop 2.5.0.0 contains a Kubernetes upgrade. Your local Kubernetes cluster will be reset after installing this version.
New
- Users subscribed to a Pro or a Team plan can now see the vulnerability scan report on the Remote repositories tab in Docker Desktop.
- Docker Desktop introduces a support option for users who have subscribed to a Pro or a Team Plan.
Upgrades
Bug fixes and minor changes
- Renamed ‘Run Diagnostics’ to ‘Get support’.
- Removed BlueStacks warning message. Fixes docker/for-mac#4863.
- Made container start faster in cases where shared volumes have lots of files. Fixes docker/for-mac#4957.
- File sharing: fixed changing ownership of read-only files. Fixes docker/for-mac#4989, docker/for-mac#4964.
- File sharing: generated
ATTRIB
inotify events as well asMODIFY
. Fixes docker/for-mac#4962. - File sharing: returned
EOPNOTSUPP
fromfallocate
for unsupported modes. Fixesminio
. Fixes docker/for-mac#4964. - File sharing: fixed a possible premature file handle close.
- When sharing Linux directories (
/var
,/bin
, etc) with containers, Docker Desktop avoids watching paths in the host file system. - When sharing a file into a container (e.g.
docker run -v ~/.gitconfig
) Docker Desktop does not watch the parent directory. Fixes docker/for-mac#4981, docker/for-mac#4975. - Fixed an issue related to NFS mounting. Fixes docker/for-mac#4958.
- Allow symlinks to point outside of shared volumes. Fixes docker/for-mac#4862.
- Diagnostics: avoid hanging when Kubernetes is in a broken state.
- Docker Desktop now supports
S_ISUID
,S_ISGID
andS_ISVTX
in calls tochmod(2)
on shared filesystems. Fixes docker/for-mac#4943.
Docker Desktop Community 2.4.0.0
2020-09-30
Docker Desktop 2.4.0.0 contains a Kubernetes upgrade. Your local Kubernetes cluster will be reset after installing this version.
New
- Docker Compose CLI - 0.1.18, enabling use of volumes with Compose and the Cloud through ECS and ACI.
- Docker introduces the new Images view in the Docker Dashboard. The images view allows users to view the Hub images, pull them and manage their local images on disk including cleaning up unwanted and unused images. To access the new Images view, from the Docker menu, select Dashboard > Images.
- Docker Desktop now enables BuildKit by default after a reset to factory defaults. To revert to the old
docker build
experience, go to Preferences > Docker Engine and then disable the BuildKit feature. - Amazon ECR Credential Helper
- Docker Desktop now uses much less CPU when there are lots of file events on the host and when running Kubernetes, see docker/roadmap#12.
- Docker Desktop now uses gRPC-FUSE for file sharing by default. This uses much less CPU than osxfs, especially when there are lots of file events on the host. To switch back to
osxfs
, go to Preferences > General and disable gRPC-FUSE.
Upgrades
Bug fixes and minor changes
- Docker Desktop on macOS 10.13 is now deprecated.
- Removed the legacy Kubernetes context
docker-for-desktop
. The contextdocker-desktop
should be used instead. Fixes docker/for-win#5089 and docker/for-mac#4089. - Adding the application to the dock and clicking on it will launch the container view if Docker is already running.
- Added support for emulating Risc-V via Qemu 4.2.0.
- Removed file descriptor limit (
setrlimit
) of10240
. We now rely on the kernel to impose limits viakern.maxfiles
andkern.maxfilesperproc
. - Fixed a Mac CPU usage bug by removing the serial console from
hyperkit
, see docker/roadmap#12. To open a shell in the VM use eithernc -U ~/Library/Containers/com.docker.docker/Data/debug-shell.sock
. - Copy container logs without ansi colors to clipboard. Fixes docker/for-mac#4786.
- Fixed automatic start on log in. See [docker/for-mac#4877] and [docker/for-mac#4890].
- Fixed bug where the application won’t start if the username is too long.
- Fixed a bug where adding directories like
/usr
to the filesharing list prevents Desktop from starting. Fixes docker/for-mac#4488 - Fixed application startup if
hosts
is specified inside the Dockerdaemon.json
. See docker/for-win#6895 - Docker Desktop always flushes filesystem caches synchronously on container start. See docker/for-mac#4943.
- Compose-on-Kubernetes is no longer included in the Docker Desktop installer. You can download it separately from the compose-on-kubernetes release page.
Known issues
- There is a known issue when using
docker-compose
with named volumes and gRPC FUSE: second and subsequent calls todocker-compose up
will fail due to the volume path having the prefix/host_mnt
. To work around this issue, switch back toosxfs
in Settings. See docker/for-mac#4859. - There is a known issue when enabling Kubernetes where the settings UI fails to update the Kubernetes state. To work around this issue, close and re-open the window.
- There is a rare known issue when switching users where the images view continues to show the repositories of the previous user. To work around this issue, close and re-open the window.
Docker Desktop Community 2.3.0.5
2020-09-15
New
- The new Cloud integration in Docker CLI makes it easy to run containers in the cloud using either Amazon ECS or Microsoft ACI. For more information, see Deploying Docker containers on ECS and Deploying Docker containers on Azure.
Upgrades
Bug fixes and minor changes
- Fixed automatic start on log in. See docker/for-mac#4877 and docker/for-mac#4890
Known issues
- The
clock_gettime64
system call returnsEPERM
rather thanENOSYS
in i386 images. To work around this issue, disableseccomp
by using the--privileged
flag. See docker/for-win#8326.
Docker Desktop Community 2.3.0.4
2020-07-27
Upgrades
Bug fixes and minor changes
- Fixed a privilege escalation vulnerability in
com.docker.vmnetd
. See CVE-2020-15360 - Fixed an issue with startup when the Kubernetes certificates have expired. See docker/for-mac#4594
- Fix an incompatibility between
hyperkit
and osquery which resulted in excessivehyperkit
CPU usage. See docker/for-mac#3499 - Dashboard: Fixed containers logs which were sometimes truncated. Fixes docker/for-win#5954
Docker Desktop Community 2.3.0.3
2020-05-27
Upgrades
Bug fixes and minor changes
- Re-added device-mapper to the embedded Linux kernel. Fixes docker/for-mac#4549.
- Fixed
hyperkit
on newer Macs and newer versions ofHypervisor.framework
. Fixes docker/for-mac#4562.
Docker Desktop Community 2.3.0.2
2020-05-11
New
Docker Desktop introduces a new onboarding tutorial upon first startup. The Quick Start tutorial guides users to get started with Docker in a few easy steps. It includes a simple exercise to build an example Docker image, run it as a container, push and save the image to Docker Hub.
Upgrades
- Docker Compose 1.25.5
- Go 1.13.10
- Linux kernel 4.19.76
- LinuxKit init, runc and containerd
Bug fixes and minor changes
- Reduced the size of the Docker Desktop installer from 708 MB to 456 MB.
- Fixed bug where containers disappeared from the UI when Kubernetes context is invalid. Fixes docker/for-win#6037.
- Fixed a file descriptor leak in
vpnkit-bridge
. Fixes docker/for-win#5841. - Added a link to the Edge channel from the UI.
- Made the embedded terminal resizable.
- Fixed a bug where diagnostic upload would fail if the username contained spaces.
- Fixed a bug where the Docker UI could be started without the engine.
- Switched from
ahci-hd
tovirtio-blk
to avoid an AHCI deadlock, see moby/hyperkit#94 and docker/for-mac#1835. - Fixed an issue where a container port could not be exposed on a specific host IP. See docker/for-mac#4209.
- Removed port probing from dashboard, just unconditionally showing links to ports that should be available. Fixes docker/for-mac#4264.
- Docker Desktop now shares
/var/folders
by default as it stores per-user temporary files and caches. - Ceph support has been removed from Docker Desktop to save disk space.
- Fixed a performance regression when using shared volumes in 2.2.0.5. Fixes [docker/for-mac#4423].
Docker Desktop Community 2.2.0.5
2020-04-02
Bug fixes and minor changes
- Removed dangling
/usr/local/bin/docker-machine
symlinks which avoids custom installs of Docker Machine being accidentally deleted in future upgrades. Note that if you have installed Docker Machine manually, then the install might have followed the symlink and installed Docker Machine in/Applications/Docker.app
. In this case, you must manually reinstall Docker Machine after installing this version of Docker Desktop. Fixes docker/for-mac#4208.
Docker Desktop Community 2.2.0.4
2020-03-13
Upgrades
Bug fixes and minor changes
- Kubernetes: Persistent volumes created by claims are now stored in the virtual machine. Fixes docker/for-win#5665.
- Fixed an issue which caused Docker Desktop Dashboard to attempt connecting to all exposed ports inside a container. Fixes docker/for-mac#4264.
Docker Desktop Community 2.2.0.3
2020-02-11
Upgrades
Docker Desktop Community 2.2.0.0
2020-01-21
Docker Desktop 2.2.0.0 contains a Kubernetes upgrade. Your local Kubernetes cluster will be reset after installing this version.
Upgrades
- Docker Compose 1.25.2
- Kubernetes 1.15.5
- Linux kernel 4.19.76
- QEMU 4.0.1
New
-
Docker Desktop Dashboard: The new Docker Desktop Dashboard provides a user-friendly interface which enables you to interact with containers and applications, and manage the lifecycle of your applications directly from the UI. In addition, it allows you to access the logs, view container details, and monitor resource utilization to explore the container behavior. For detailed information about the new Dashboard UI, see Docker Desktop Dashboard.
- Introduced a new user interface for the Docker Desktop Preferences menu.
- The Restart, Reset, and Uninstall options are now available on the Troubleshoot menu.
- Added the ability to start and stop existing Compose-based applications and view combined logs in the Docker Desktop Dashboard UI.
Bug fixes and minor changes
- Added missing completions for the
fish
shell for Docker Compose. Fixes docker/for-mac#3795. - Fixed a bug that did not allow users to copy and paste text in the Preferences > Daemon window. Fixes docker/for-mac#3798.
- Added support for
Expect: 100-continue
headers in the Docker API proxy. Some HTTP clients such ascurl
send this header when the payload is large, for example, when creating containers. Fixes moby/moby#39693. - Added a loading overlay to the Settings and Troubleshoot windows to prevent editing conflicts.
- Deactivated the Reset Kubernetes button when Kubernetes is not activated.
- Improved the navigation in Settings and Troubleshoot UI.
- Fixed a bug in the UEFI boot menu that sometimes caused Docker Desktop to hang during restart. Fixes docker/for-mac#2655 and docker/for-mac#3921.
- Docker Desktop now allows users to access the host’s SSH agent inside containers. Fixes docker/for-mac#410
- Docker Machine is no longer included in the Docker Desktop installer. You can download it separately from the Docker Machine releases page.
- Fixed an issue that caused VMs running on older hardware with macOS Catalina to fail on startup with the error
processor does not support desired secondary processor-based controls
. - Fixed port forwarding when containers are using
overlay
networks. - Fixed a container start error when a container has more than one port with an arbitrary or not-yet-configured external port number. For example,
docker run -p 80 -p 443 nginx
. Fixes docker/for-win#4935 and docker/compose#6998. - Fixed an issue that occurs when sharing overlapping directories.
- Fixed a bug that prevented users from changing the location of the VM disk image.
- Docker Desktop does not inject
inotify
events on directories anymore as these can cause mount points to disappear inside containers. Fixes docker/for-mac#3976. - Fixed an issue that caused Docker Desktop to fail on startup when there is an incomplete Kubernetes config file.
- Fixed an issue where attempts to log into Docker through Docker Desktop could sometimes fail with the
Incorrect authentication credentials
error. Fixes docker/for-mac#4010.
Known issues
-
When you start a Docker Compose application and then start a Docker App which has the same name as the Compose application, Docker Desktop displays only one application on the Dashboard. However, when you expand the application, containers that belong to both applications are displayed on the Dashboard.
-
When you deploy a Docker App with multiple containers on Kubernetes, Docker Desktop displays each Pod as an application on the Dashboard.
Docker Desktop Community 2.1.0.5
2019-11-18
Docker Desktop 2.1.0.5 contains a Kubernetes upgrade. Note that your local Kubernetes cluster will be reset after installing this version.
Upgrades
Docker Desktop Community 2.1.0.4
2019-10-21
Upgrades
New
Docker Desktop now enables you to sign into Docker Hub using two-factor authentication. For more information, see Two-factor authentication.
Docker Desktop Community 2.1.0.3
2019-09-16
Upgrades
Bug fixes and minor changes
- All binaries included in Docker Desktop are now notarized so that they can run on macOS Catalina. For more information, see Notarization Requirement for Mac Software.
Docker Desktop Community 2.1.0.2
2019-09-04
Docker Desktop 2.1.0.2 contains a Kubernetes upgrade. Note that your local Kubernetes cluster will be reset after installing this version.
Upgrades
Docker Desktop Community 2.1.0.1
2019-08-08
Note that you must sign in and create a Docker ID in order to download Docker Desktop.
Upgrades
- Docker 19.03.1
- Docker Compose 1.24.1
- Kubernetes 1.14.3
- Compose on Kubernetes 0.4.23
- Docker Machine 0.16.1
- linuxkit v0.7
- Linux Kernel 4.9.184
- Kitematic 0.17.6
- Qemu 4.0.0 for cross compiling for ARM
- Alpine 3.10
- Docker Credential Helpers 0.6.3
- Hyperkit v0.20190802
New
- Selecting the ‘Experimental features’ checkbox in the Daemon Preferences menu turns on experimental features for Docker daemon and Docker CLI.
- Improved the reliability of
com.docker.osxfs trace
performance profiling command. Users can now run thecom.docker.osxfs trace --summary
option for a high-level summary of operations, instead of receiving a trace of all operations. - Docker Desktop now supports large lists of DNS resource records on Mac. Fixes docker/for-mac#2160.
Experimental
Experimental features provide early access to future product functionality. These features are intended for testing and feedback only as they may change between releases without warning or can be removed entirely from a future release. Experimental features must not be used in production environments. Docker does not offer support for experimental features.
Docker Desktop Community 2.1.0.0 contains the following experimental features.
- Docker App: Docker App is a CLI plugin that helps configure, share, and install applications. For more information, see Working with Docker App.
- Docker Buildx: Docker Buildx is a CLI plugin for extended build capabilities with BuildKit. For more information, see Working with Docker Buildx.
Bug fixes and minor changes
- Docker Desktop now allows users to expose privileged UDP ports. docker/for-mac#3775
- Fixed an issue where running some Docker commands can fail if you are not using Credential Helpers. docker/for-mac#3785
- Changed the host’s kubernetes context so that
docker run -v .kube:kube ... kubectl
works. - Restricted the
cluster-admin
role on local Kubernetes cluster tokube-system
namespace. - Reduced the VM startup time. swap is not created every time a virtual machine boots.
- Fixed Kubernetes installation with VPNkit subnet.
- Fixed a bug where the process output was not redirected to stdout when gathering diagnostics on Windows, which sometimes resulted in a crash.
- Added
/etc/machine-id
to the virtual machine. Fixes docker/for-mac#3554. - Docker Desktop does not send DNS queries for
docker-desktop.<domain>
every 10s. It now relies on the host’s DNS domain search order rather than trying to replicate it inside the VM. - Removed the ability to log in using email address as a username as the Docker command line does not support this.
- Docker Desktop now allows running a Docker registry inside a container. Fixes docker/for-mac#3611.
- Fixed a stability issue with the DNS resolver.
- Docker Desktop truncates UDP DNS responses which are over 512 bytes in sizes.
- Fixed port 8080 that was used on localhost when starting Kubernetes. Fixes docker/for-mac#3522.
- Improved error messaging: Docker Desktop does not prompt users to run diagnostics, or to reset to factory default when it is not appropriate.
- Kubernetes: Docker Desktop now uses the default maximum number of pods for kubelet. docker/for-mac#3453.
- Fixed DockerHelper crash. docker/for-mac#3470.
- Fixed binding of privileged ports with specified IP. docker/for-mac#3464
- Fixed service log collection in diagnostics.
- Docker Desktop now gathers
/etc/hosts
to help with diagnostics. - When two services have a common exposed port, Docker Desktop now exposes the available ports for the second service. docker/for-mac#3438.
- Docker Desktop ensures localhost resolves to 127.0.0.1. This is related to docker/for-mac#2990, docker/for-mac#3383.
Docker Community Edition 2.0.0.3 2019-02-15
- Upgrades
- Docker 18.09.2, fixes CVE-2019-5736
Docker Community Edition 2.0.0.2 2019-01-16
- Upgrades
- Docker 18.09.1
- Docker Machine 0.16.1
- Kubernetes 1.10.11, fixes CVE-2018-1002105
- Kitematic 0.17.6
- Golang 1.10.6, fixes CVEs: CVE-2018-16875, CVE-2018-16873 and CVE-2018-16874
- Bug fixes and minor changes
- Add 18.09 missing daemon options
Stable Releases of 2018
Docker Community Edition 2.0.0.0-mac81 2018-12-07
- Upgrades
Docker Community Edition 2.0.0.0-mac78 2018-11-19
- Upgrades
- Docker 18.09.0
- Docker compose 1.23.1
- Docker Machine 0.16.0
- Kitematic 0.17.5
- Linux Kernel 4.9.125
- New
- New version scheme
- Deprecation
- Removed support of AUFS
- Removed support of OSX 10.11
- Bug fixes and minor changes
- Fix appearance in dark mode for OSX 10.14 (Mojave)
- VPNKit: Improved scalability of port forwarding. Related to docker/for-mac#2841
- VPNKit: Limit the size of the UDP NAT table. This ensures port forwarding and regular TCP traffic continue even when running very chatty UDP protocols.
- Ensure Kubernetes can be installed when using a non-default internal IP subnet.
- Fix panic in diagnose
Docker Community Edition 18.06.1-ce-mac73 2018-08-29
- Upgrades
- Bug fixes and minor changes
- Fix local DNS failing to resolve inside containers.
Docker Community Edition 18.06.0-ce-mac70 2018-07-25
- Upgrades
- Docker 18.06.0-ce
- Docker Machine 0.15.0
- Docker compose 1.22.0
- LinuxKit v0.5
- Linux Kernel 4.9.93 with CEPH, DRBD, RBD, MPLS_ROUTING and MPLS_IPTUNNEL enabled
- New
- Kubernetes Support. You can now run a single-node Kubernetes cluster from the “Kubernetes” Pane in Docker For Mac Preferences and use kubectl commands as well as docker commands. See https://docs.docker.com/docker-for-mac/kubernetes/
- Add an experimental SOCKS server to allow access to container networks, see docker/for-mac#2670. Also see docker/for-mac#2721
- Re-enable raw as the default disk format for users running macOS 10.13.4 and higher. Note this change only takes effect after a “reset to factory defaults” or “remove all data” (from the Whale menu -> Preferences -> Reset). Related to docker/for-mac#2625
- Bug fixes and minor changes
- AUFS storage driver is deprecated in Docker Desktop and AUFS support will be removed in the next major release. You can continue with AUFS in Docker Desktop 18.06.x, but you will need to reset disk image (in Preferences > Reset menu) before updating to the next major update. You can check documentation to save images and backup volumes
- OS X El Captain 10.11 is deprecated in Docker Desktop. You will not be able to install updates after Docker Desktop 18.06.x. We recommend upgrading to the latest version of macOS.
- Fix bug which would cause VM logs to be written to RAM rather than disk in some cases, and the VM to hang. See docker/for-mac#2984
- Fix network connection leak triggered by haproxy TCP health-checks docker/for-mac#1132
- Better message to reset vmnetd when it’s disabled. See docker/for-mac#3035
- Fix VPNKit memory leak. Fixes moby/vpnkit#371
- Virtual Machine default disk path is stored relative to $HOME. Fixes docker/for-mac#2928, docker/for-mac#1209
- Use Simple NTP to minimise clock drift between the VM and the host. Fixes docker/for-mac#2076
- Fix a race between calling stat on a file and calling close of a file descriptor referencing the file that could result in the stat failing with EBADF (often presented as “File not found”). Fixes docker/for-mac#2870
- Do not allow install of Docker for Mac on macOS Yosemite 10.10, this version is not supported since Docker for Mac 17.09.0.
- Fix button order in reset dialog windows. Fixes docker/for-mac#2827
- Fix upgrade straight from pre-17.12 versions where Docker for Mac cannot restart once the upgrade has been performed. Fixes docker/for-mac#2739
- Added log rotation for docker-ce logs inside the virtual machine.
Docker Community Edition 18.03.1-ce-mac65 2018-04-30
- Upgrades
- Bug fixes and minor changes
- Fix Docker for Mac not starting due to socket file paths being too long (typically HOME folder path being too long). Fixes docker/for-mac#2727, docker/for-mac#2731.
Docker Community Edition 18.03.1-ce-mac64 2018-04-26
- Upgrades
- Bug fixes and minor changes
- Fix Docker for Mac not starting due to socket file paths being too long (typically HOME folder path being too long). Fixes docker/for-mac#2727, docker/for-mac#2731.
Docker Community Edition 18.03.0-ce-mac60 2018-03-30
- Bug fixes and minor changes
- Fix Upgrade straight from 17.09 versions where Docker for Mac cannot restart once the upgrade has been performed. Fixes docker/for-mac#2739
Docker Community Edition 18.03.0-ce-mac59 2018-03-26
- Upgrades
- Docker 18.03.0-ce
- Docker Machine 0.14.0
- Docker compose 1.20.1
- Notary 0.6.0
- Linux Kernel 4.9.87
- AUFS 20180312
- New
- VM Swap size can be changed in settings. See docker/for-mac#2566, docker/for-mac#2389
- New menu item to restart Docker.
- Support NFS Volume sharing.
- The directory holding the disk images has been renamed (from
~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux
to ~/Library/Containers/com.docker.docker/Data/vms/0`).
- Bug fixes and minor changes
- Fix daemon not starting properly when setting TLS-related options. Fixes docker/for-mac#2663
- DNS name
host.docker.internal
should be used for host resolution from containers. Older aliases (still valid) are deprecated in favor of this one. (See https://tools.ietf.org/html/draft-west-let-localhost-be-localhost-06). - Fix for the HTTP/S transparent proxy when using “localhost” names (e.g.
host.docker.internal
). - Fix empty registry added by mistake in some cases in the Preference Daemon Pane. Fixes docker/for-mac#2537
- Clearer error message when incompatible hardware is detected.
- Fix some cases where selecting “Reset” after an error did not reset properly.
- Fix incorrect NTP config. Fixes docker/for-mac#2529
- Migration of Docker Toolbox images is not proposed anymore in Docker For Mac installer (still possible to migrate Toolbox images manually ).
Docker Community Edition 17.12.0-ce-mac55 2018-02-27
- Bug fixes and minor changes
- Revert the default disk format to qcow2 for users running macOS 10.13 (High Sierra). There are confirmed reports of file corruption using the raw format which uses sparse files on APFS. Note this change only takes effect after a reset to factory defaults (from the Whale menu -> Preferences -> Reset). Related to docker/for-mac#2625
- Fix VPNKit proxy for docker.for.mac.http.internal.
Docker Community Edition 17.12.0-ce-mac49 2018-01-19
- Bug fixes and minor changes
- Fix error during resize/create Docker.raw disk image in some cases. Fixes docker/for-mac#2383, docker/for-mac#2447, [docker/for-mac#2453], (https://github.com/docker/for-mac/issues/2453), docker/for-mac#2420
- Fix additional allocated disk space not available in containers. Fixes docker/for-mac#2449
- Vpnkit port max idle time default restored to 300s. Fixes docker/for-mac#2442
- Fix using an HTTP proxy with authentication. Fixes docker/for-mac#2386
- Allow HTTP proxy excludes to be written as .docker.com as well as *.docker.com
- Allow individual IP addresses to be added to HTTP proxy excludes.
- Avoid hitting DNS timeouts when querying docker.for.mac.* when the upstream DNS servers are slow or missing.
Docker Community Edition 17.12.0-ce-mac47 2018-01-12
- Bug fixes and minor changes
- Fix for
docker push
to an insecure registry. Fixes docker/for-mac#2392 - Separate internal ports used to proxy HTTP and HTTPS content.
- Fix for
Docker Community Edition 17.12.0-ce-mac46 2018-01-09
- Upgrades
- Docker 17.12.0-ce
- Docker compose 1.18.0
- Docker Machine 0.13.0
- Linux Kernel 4.9.60
- New
- VM entirely built with Linuxkit
- VM disk size can be changed in disk preferences. (See docker/for-mac#1037)
- For systems running APFS on SSD on High Sierra, use
raw
format VM disks by default. This improves disk throughput (from 320MiB/sec to 600MiB/sec indd
on a 2015 MacBook Pro) and disk space handling. Existing disks are kept in qcow format, if you want to switch to raw format you need to “Remove all data” or “Reset to factory defaults”. See https://docs.docker.com/docker-for-mac/faqs/#disk-usage - DNS name
docker.for.mac.host.internal
should be used instead ofdocker.for.mac.localhost
(still valid) for host resolution from containers, since since there is an RFC banning the use of subdomains of localhost. See https://tools.ietf.org/html/draft-west-let-localhost-be-localhost-06.
- Bug fixes and minor changes
- Display various component versions in About box.
- Avoid VM reboot when changing host proxy settings.
- Don’t break HTTP traffic between containers by forwarding them via the external proxy. (See docker/for-mac#981)
- Filesharing settings are now stored in settings.json.
- Daemon restart button has been moved to settings / Reset Tab.
- Better VM state handling & error messages in case of VM crashes.
- Fix login into private repository with certificate issue. (See docker/for-mac#2201)
Stable Releases of 2017
Docker Community Edition 17.09.1-ce-mac42 2017-12-11
- Upgrades
- Bug fixes and minor changes
- Fix bug not allowing to move qcow disk in some cases.
Docker Community Edition 17.09.0-ce-mac35 2017-10-06
- Bug fix
- Fix Docker For Mac unable to start in some cases : removed use of libgmp sometimes causing the vpnkit process to die.
Docker Community Edition 17.09.0-ce-mac33 2017-10-03
- Bug fix
- Do not show Toolbox migration assistant when there are existing Docker For Mac data.
Docker Community Edition 17.09.0-ce-mac32 2017-10-02
- Upgrades
- Docker 17.09.0-ce
- Docker Compose 1.16.1
- Docker Machine 0.12.2
- Docker Credential Helpers 0.6.0
- Linux Kernel 4.9.49
- AUFS 20170911
- DataKit update (fix instability on High Sierra)
- New
- Add daemon options validation
- VPNKit: add support for ping!
- VPNKit: add slirp/port-max-idle-timeout to allow the timeout to be adjusted or even disabled
- VPNKit: bridge mode is default everywhere now
- Transparent proxy using macOS system proxies (if defined) directly
- GUI settings are now stored in ~/Library/Group\ Containers/group.com.docker/settings.json. daemon.json in now a file in ~/.docker/
- You can now change the default IP address used by Hyperkit if it collides with your network
- Bug fixes and minor changes
- Fix instability on High Sierra (docker/for-mac#2069, docker/for-mac#2062, docker/for-mac#2052, docker/for-mac#2029, docker/for-mac#2024)
- Fix password encoding/decoding (docker/for-mac#2008, docker/for-mac#2016, docker/for-mac#1919, docker/for-mac#712, docker/for-mac#1220).
- Kernel: Enable TASK_XACCT and TASK_IO_ACCOUNTING (docker/for-mac#1608)
- Rotate logs in the VM more often
- VPNKit: change protocol to support error messages reported back from the server
- VPNKit: fix a bug which causes a socket to leak if the corresponding TCP connection is idle for more than 5 minutes (related to docker/for-mac#1374)
- VPNKit: improve the logging around the Unix domain socket connections
- VPNKit: automatically trim whitespace from int or bool database keys
- Diagnose can be cancelled & Improved help information. Fixes docker/for-mac#1134, docker/for-mac#1474
- Support paging of docker-cloud repositories & orgs. Fixes docker/for-mac#1538
Docker Community Edition 17.06.2-ce-mac27 2017-09-06
- Upgrades
Docker Community Edition 17.06.1-ce-mac24, 2017-08-21
Upgrades
- Docker 17.06.1-ce-rc1
- Linux Kernel 4.9.36
- AUFS 20170703
Bug fixes and minor changes
-
DNS Fixes. Fixes docker/for-mac#1763, docker/for-mac#1811, docker/for-mac#1803
-
Avoid unnecessary VM reboot (when changing proxy exclude, but no proxy set). Fixes docker/for-mac#1809, docker/for-mac#1801
Docker Community Edition 17.06.0-ce-mac18, 2017-06-28
Upgrades
- Docker 17.06.0-ce
- Docker Credential Helpers 0.5.2
- Docker Machine 0.12.0
- Docker compose 1.14.0
- qcow-tool v0.10.0 (improve the performance of
compact
: mirage/ocaml-qcow#94) - OSX Yosemite 10.10 is marked as deprecated
- Linux Kernel 4.9.31
New
- Integration with Docker Cloud: control remote Swarms from the local CLI and view your repositories.
- GUI Option to opt out of credential store
- GUI option to reset Docker data without losing all settings (fixes docker/for-mac#1309)
- Add an experimental DNS name for the host:
docker.for.mac.localhost
- Support for client (i.e. “login”) certificates for authenticating registry access (fixes docker/for-mac#1320)
- OSXFS: support for
cached
mount flag to improve performance of macOS mounts when strict consistency is not necessary
Bug fixes and minor changes
- Resync HTTP(S) proxy settings on application start
- Interpret system proxy setting of
localhost
correctly (see docker/for-mac#1511) - All Docker binaries bundled with Docker for Mac are now signed
- Display all Docker Cloud organizations and repositories in the whale menu (fixes docker/for-mac#1538 )
- OSXFS: improved latency for many common operations, such as read and write, by approximately 25%
- Fixed GUI crash when text table view was selected and windows re-opened (fixes docker/for-mac#1477)
- Reset to default / uninstall also remove
config.json
andosxkeychain
credentials - More detailed VirtualBox uninstall requirements ( docker/for-mac#1343)
- Request time sync after waking up to improve docker/for-mac#17
- VPNKit: Improved DNS timeout handling (fixes docker/for-mac#202)
- VPNKit: Use DNSServiceRef API by default (only enabled for new installs or after factory reset)
- Add a reset to factory defaults button when application crashes
- Toolbox import dialog now defaults to “Skip”
- Buffered data should be treated correctly when Docker client requests are upgraded to raw streams
- Removed an error message from the output related to experimental features handling
vmnetd
should not crash when user home directory is on an external drive- Improved settings database schema handling
- Disk trimming should work as expected
- Diagnostics now contains more settings data
Docker Community Edition 17.03.1-ce-mac12, 2017-05-12
Upgrades
- Security fix for CVE-2017-7308
Docker Community Edition 17.03.1-ce-mac5, 2017-03-29
Upgrades
Docker Community Edition 17.03.0-ce-mac1, 2017-03-02
New
- Renamed to Docker Community Edition
- Integration with Docker Cloud: control remote Swarms from the local CLI and view your repositories. This feature is going to be rolled out to all users progressively
- Docker will now securely store your IDs in the macOS keychain
Upgrades
- Docker 17.03.0-ce
- Docker Compose 1.11.2
- Docker Machine 0.10.0
- Linux kernel 4.9.12
Bug fixes and minor changes
- Allow to reset faulty daemon.json through a link in advanced subpanel
- More options when moving disk image
- Add link to experimental features
- Filesharing and daemon table empty fields are editable
- Hide restart button in settings window
- Fix bug where update window hides when app not focused
- Don’t use port 4222 inside the Linux VM
- Add page_poison=1 to boot args
- Add a new disk flushing option
- DNS forwarder ignores responses from malfunctioning servers (docker/for-mac#1025)
- DNS forwarder send all queries in parallel, process results in order
- DNS forwarder includes servers with zones in general searches (docker/for-mac#997)
- Parses aliases from /etc/hosts (docker/for-mac#983)
- Can resolve DNS requests via servers listed in the /etc/resolver directory on the host
- Limit vCPUs to 64
- Fixed for swap not being mounted
- Fixed aufs xattr delete issue (docker/docker#30245)
- osxfs: Catch EPERM when reading extended attributes of non-files
- VPNKit: Fixed unmarshalling of DNS packets containing pointers to pointers to labels
- VPNKit: Set the Recursion Available bit on DNS responses from the cache
- VPNKit: Avoid diagnostics to capture too much data
- VPNKit: Fixed a source of occasional packet loss (truncation) on the virtual ethernet link
- HyperKit: Dump guest physical and linear address from VMCS when dumping state
- HyperKit: Kernel boots with panic=1 arg
Docker for Mac 1.13.1, 2017-02-09
Upgrades
- Docker 1.13.1
- Docker Compose 1.11.1
- Linux kernel 4.9.8
Bug fixes and minor changes
- Add link to experimental features
- New 1.13 cancellable operations should now be properly handled by the Docker for desktop
daemon.json
should render nicely in the UI- Allow to reset faulty
daemon.json
through a link in advanced subpanel
Docker for Mac 1.13.0, 2017-01-19
Upgrades
- Docker 1.13.0
- Docker Compose 1.10
- Docker Machine 0.9.0
- Notary 0.4.3
- Linux kernel 4.9.4
- qcow-tool 0.7.2
New
- The storage location of the Linux volume can now be moved
- Reclaim disk size on reboot
- You can now edit filesharing paths
- Memory can be allocated with 256 MiB steps
- Proxy can now be completely disabled
- Support for arm, aarch64, ppc64le architectures using qemu
- Dedicated preference pane for advanced configuration of the
docker daemon (edit
daemon.json
) - Docker Experimental mode can be toggled
- Better support for Split DNS VPN configurations
- Use more DNS servers, respect order
Bug fixes and minor changes
- You cannot edit settings while docker is restarting
- Support Copy/Paste in About box
- Auto update polling every 24h
- Kernel boots with vsyscall=emulate arg and CONFIG_LEGACY_VSYSCALL is set to NONE in Moby
- Fixed vsock deadlock under heavy write load
- If you opt-out of analytics, you’re prompted for approval before a bug report is sent
- Fixed bug where search domain could be read as
DomainName
- Dedicated preference pane for HTTP proxy settings
- Dedicated preference pane for CPU & Memory computing resources
- Privacy settings moved to the general preference pane
- Fixed an issue where the preference pane disappeared when the welcome whale menu was closed
- HyperKit: code cleanup and minor fixes
- Improvements to Logging and Diagnostics
- osxfs: switch to libev/kqueue to improve latency
- VPNKit: improvements to DNS handling
- VPNKit: Improved diagnostics
- VPNKit: Forwarded UDP datagrams should have correct source port numbers
- VPNKit: add a local cache of DNS responses
- VPNKit: If one request fails, allow other concurrent requests to succeed. For example this allows IPv4 servers to work even if IPv6 is broken.
- VPNKit: Fix bug that could cause the connection tracking to underestimate the number of active connections
Stable Releases of 2016
Docker for Mac 1.12.5, 2016-12-20
Upgrades
- Docker 1.12.5
- Docker Compose 1.9.0
Skipped Docker for Mac 1.12.4
We did not distribute a 1.12.4 stable release
Docker for Mac 1.12.3, 2016-11-09
Upgrades
- Docker 1.12.3
- Linux Kernel 4.4.27
- Notary 0.4.2
- Docker Machine 0.8.2
- Docker Compose 1.8.1
- Kernel vsock driver v7
- aufs 20160912
Bug fixes and minor changes
General
-
Fixed an issue where the whale animation during setting change was inconsistent
-
Fixed an issue where some windows stayed hidden behind another app
-
Fixed an issue where the Docker status would continue to be yellow/animated after the VM had started correctly
-
Fixed an issue where Docker for Mac was incorrectly reported as updated
-
Channel is now displayed in About box
-
Crash reports are sent over Bugsnag rather than HockeyApp
-
Fixed an issue where some windows did not claim focus correctly
-
Added UI when switching channel to prevent user losing containers and settings
-
Check disk capacity before Toolbox import
-
Import certificates in
etc/ssl/certs/ca-certificates.crt
-
disk: make the “flush” behaviour configurable for database-like workloads. This works around a performance regression in 1.12.1.
Networking
-
Proxy: Fixed application of system or custom proxy settings over container restart
-
DNS: reduce the number of UDP sockets consumed on the host
-
VPNkit: improve the connection-limiting code to avoid running out of sockets on the host
-
UDP: handle diagrams bigger than 2035, up to the configured macOS kernel limit
-
UDP: make the forwarding more robust; drop packets and continue rather than stopping
File sharing
-
osxfs: Fixed the prohibition of chown on read-only or mode 0 files, (fixes docker/for-mac#117, docker/for-mac#263, docker/for-mac#633)
-
osxfs: Fixed race causing some reads to run forever
-
osxfs: Fixed a simultaneous volume mount race which can result in a crash
Moby
- Increase default ulimit for memlock (fixes docker/for-mac#801)
Docker for Mac 1.12.1, 2016-09-16
New
- Support for macOS 10.12 Sierra
Upgrades
- Docker 1.12.1
- Docker machine 0.8.1
- Linux kernel 4.4.20
- aufs 20160905
Bug fixes and minor changes
General
-
Fixed communications glitch when UI talks to com.docker.vmnetd Fixes docker/for-mac#90
-
docker-diagnose
: display and record the time the diagnosis was captured -
Don’t compute the container folder in
com.docker.vmnetd
Fixes docker/for-mac#47 -
Warn the user if BlueStacks is installed (potential kernel panic)
-
Automatic update interval changed from 1 hour to 24 hours
-
Include Zsh completions
-
UI Fixes
Networking
-
VPNKit supports search domains
-
slirp: support up to 8 external DNS servers
-
slirp: reduce the number of sockets used by UDP NAT, reduce the probability that NAT rules will time out earlier than expected
-
Entries from
/etc/hosts
should now resolve from within containers -
Allow ports to be bound on host addresses other than
0.0.0.0
and127.0.0.1
Fixes issue reported in docker/for-mac#68 -
Use Mac System Configuration database to detect DNS
File sharing (osxfs)
-
Fixed thread leak
-
Fixed a malfunction of new directories that have the same name as an old directory that is still open
-
Rename events now trigger DELETE and/or MODIFY
inotify
events (saving with TextEdit works now) -
Fixed an issue that caused
inotify
failure and crashes -
Fixed a directory file descriptor leak
-
Fixed socket
chowns
Moby
-
Use default
sysfs
settings, transparent huge pages disabled -
cgroup
mount to supportsystemd
in containers -
Increase Moby
fs.file-max
to 524288 -
Fixed Moby Diagnostics and Update Kernel
HyperKit
- HyperKit updated with
dtrace
support and lock fixes
Docker for Mac 2016-08-11 1.12.0-a
This bug fix release contains osxfs improvements. The fixed issues may have been seen as failures with apt-get and npm in containers, missed inotify events or unexpected unmounts.
Bug fixes
-
osxfs: fixed an issue causing access to children of renamed directories to fail (symptoms: npm failures, apt-get failures)
-
osxfs: fixed an issue causing some ATTRIB and CREATE inotify events to fail delivery and other inotify events to stop
-
osxfs: fixed an issue causing all inotify events to stop when an ancestor directory of a mounted directory was mounted
-
osxfs: fixed an issue causing volumes mounted under other mounts to spontaneously unmount
Docker for Mac 1.12.0, 2016-07-28
- First stable release
Components
- Docker 1.12.0
- Docker Machine 0.8.0
- Docker Compose 1.8.0