Host Path Mounts
Host Path Mounts allow Docker containers to access host file systems, enabling data sharing and integration between containerized applications and the host environment
Host path mounts are bind mounts that expose a specific, existing directory or file on the host filesystem directly inside a container, providing immediate, two-way visibility between host and container for that particular path.
Mounting a Host Directory
The most common form mounts an entire directory from the host into a container at a specified path.
docker run -d -v /home/user/projects/myapp:/app myapp:1.0
Files within /home/user/projects/myapp on the host are directly accessible at /app inside the container, with changes from either side immediately visible to the other.
Mounting a Single Host File
A bind mount isn't limited to entire directories — a single specific file can be mounted as well.
docker run -d -v /etc/myapp/config.yaml:/app/config.yaml myapp:1.0
This makes a specific host configuration file directly available inside the container, without needing to copy it in or rebuild the image to reflect changes.
Why the Host Path Must Already Exist
Unlike a named volume, which Docker creates automatically if it doesn't already exist, a bind mount requires the specified host path to actually exist beforehand — attempting to mount a nonexistent host directory typically results in Docker creating an empty directory there instead, which can be surprising if not expected.
docker run -d -v /home/user/nonexistent-dir:/app/data myapp:1.0
ls /home/user/nonexistent-dir
This reveals that Docker created an empty directory at the specified host path, rather than failing outright, which might not be the intended behavior if a specific, pre-populated directory was actually expected.
Verifying Two-Way Visibility
Confirming that changes made on either side of a host path mount are correctly reflected on the other validates the mount is working as intended.
echo "test" > /home/user/projects/myapp/test.txt
docker exec myapp cat /app/test.txt
Why Host Path Mounts Matter
Host path mounts provide a direct, immediate connection between specific host content and a running container, making them especially valuable for development workflows and for exposing existing host configuration or data without needing to copy it into an image or a separately managed volume.