Description
Recent Docker versions (17.04 CE Edge onwards) add additional flags to the -v
option for docker run
that make it possible to specify the consistency requirements for a bind-mounted directory. The flags are
consistent
: Full consistency. The container runtime and the host maintain an identical view of the mount at all times. This is the default.cached
: The host's view of the mount is authoritative. There may be delays before updates made on the host are visible within a container.delegated
: The container runtime's view of the mount is authoritative. There may be delays before updates made in a container are visible on the host.
In 17.04 cached
is significantly faster than consistent
for many workloads. However, delegated
currently behaves identically to cached
. The Docker for Mac team plans to release an improved implementation of delegated
in the future, to speed up write-heavy workloads. We also plan to further improve the performance of cached
and consistent
.
We will post updates relating to Docker for Mac file sharing performance in comments to this issue. Users interested in news about performance improvements should subscribe here.
To keep the signal-to-noise ratio high we will actively moderate this issue, removing off-topic advertisements, etc. Questions about the implementation, the behaviour, and the design are very welcome, as are realistic benchmarks and real-world use cases.