mindav
mindav copied to clipboard
A self-hosted file backup server which bridges WebDAV protocol with @Minio written in @Totoval. Webdav ❤️ Minio
MinDAV
About MinDAV
MinDAV is a self-hosted file backup server which bridges WebDAV protocol with Minio.
WebDAV ❤️ Minio
Why them?
WebDAV
Web Distributed Authoring and Versioning (WebDAV) is an extension of the Hypertext Transfer Protocol (HTTP) that allows clients to perform remote Web content authoring operations.
There're many cloud storages that support WebDAV protocol, such as dropbox, owncloud, nextcloud, etc.
WebDAV provides a simple port for your files.
Minio
The 100% Open Source, Enterprise-Grade, Amazon S3 Compatible Object Storage
Minio is reliable for your files.
Architecture

One Click Start
git clone [email protected]:totoval/mindav.git
cd mindav
cp .env.example.json .env.json
docker-compose up -d
Now you can connect the MinDAV by using your favorite WebDAV clients, such as Cyberduck:
Getting Started
Assumed that you already have your Minio server running. Or Quick Run Minio Server
-
cp .env.example.json .env.json
- Config your Minio in your
.env.json
file{ "WEBDAV_DRIVER": "minio", "WEBDAV_USER": "totoval", "WEBDAV_PASSWORD": "passw0rd", "MINIO_ENDPOINT": "play.min.io:9000", "MINIO_ACCESS_KEY_ID": "access_key_id", "MINIO_SECRET_ACCESS_KEY": "secret_access_key", "MINIO_BUCKET": "bucket_name", "MINIO_USE_SSL": false, "MEMORY_UPLOAD_MODE": false }
- Run
go run main.go
or the run the binary - Now you can connect the MinDAV by using your favorite WebDAV clients
Quick Run Minio Server
docker run --name minio --rm -it \
-p "9000:9000" \
-v "./minio/data:/data" \
-v "./minio/config:/root/.minio" \
minio/minio:latest \
server /data
Supported Clients(KNOWN):
-
Cyberduck for
macOS
,Windows
-
PhotoSync for
iOS
,Android
-
FE File Explorer for
iOS
,Android
,macOS
-
Filezilla for
macOS
,Windows
,Linux
-
rclone for
macOS
,Windows
,Linux
- And More...
OSX
'sfinder
is not support forrename
operate!
MEMORY_UPLOAD_MODE
If the host has a large memory, then set to
true
could improve upload performance.
Roadmap
- [x] Memory filesystem support
- [x] File filesystem support
- [x] Minio filesystem support
- [x] User system