Mount a webdav directory as an NFS filesystem to use it as a Docker or Docker Compose volume.
The example Compose manifest will start the webdav-nfs container on localhost port 2049
.
It will then make the NFS filesystem available to other services by configuring it as a volume.
The service_healthy
condition ensures that a connection to a webdav directory has been established before the other service can start using it.
Multiple services can use the same volume.
wget https://raw.githubusercontent.com/nedix/webdav-nfs-container/main/docs/examples/compose.yml
docker compose up -d
docker compose exec example-container ls /data
The following example will mount the remote webdav directory to a local directory named webdav-nfs
.
docker run --rm --pull always --name webdav-nfs \
--cap-add SYS_ADMIN --device /dev/fuse \
-p 127.0.0.1:2049:2049 \
-e WEBDAV_ENDPOINT=foo \
-e WEBDAV_USERNAME=bar \
-e WEBDAV_PASSWORD=baz \
--restart unless-stopped \
nedix/webdav-nfs
mkdir webdav-nfs
mount -v -o vers=4 -o port=2049 127.0.0.1:/ ./webdav-nfs