AutoDav helps you quickly set up a WebDAV service in Docker with automatic SSL support via Certbot. Additionally, it includes a web-based file browser UI (powered by Filebrowser) for easy management of your WebDAV data.
- WebDAV Service: Securely store and access your files using WebDAV protocol.
- Automatic SSL: Automate SSL certificate management with Certbot.
- File Browser UI: Manage your files effortlessly via a user-friendly web interface.
- Customizable: Configure all settings using a .env file.
Follow these steps to set up and start your WebDAV service:
-
Clone the Repository
git clone https://github.com/GareArc/AutoDav.git cd AutoDav -
Configure Environment Variables
Copy the example .env file and customize it to fit your needs:
cp .env.example .env
Edit the .env file to configure WebDAV, Nginx, and Certbot settings:
Variable Description Default/Example WEBDAV_AUTH_TYPEAuthentication type. DigestWEBDAV_USERNAMEUsername for WebDAV authentication. yourusernameWEBDAV_PASSWORDPassword for WebDAV authentication. yourpasswordNGINX_SSL_CERT_KEY_FILENAMEFilename of the SSL certificate private key. privkey.pemNGINX_SSL_CERT_FILENAMEFilename of the SSL certificate. fullchain.pemNGINX_KEEPALIVE_TIMEOUTTimeout setting for Nginx keepalive connections. (0 for ) 0NGINX_WEDAV_TIMEOUTTimeout for communication between Nginx and client. 86400sNGINX_HTTPS_ENABLEDEnable HTTPS for Nginx. falseNGINX_ENABLE_CERTBOT_CHALLENGEEnable Certbot challenge for SSL certificate issuance. falseEXPOSE_NGINX_SSL_PORTPort to expose Nginx HTTPS (SSL) service. 443EXPOSE_NGINX_PORTPort to expose Nginx HTTP service. 80CERTBOT_OPTIONSAdditional options for Certbot. (Optional, leave blank) CERTBOT_EMAILEmail address for Certbot notifications and registration. (Optional) your-email@example.comCERTBOT_DOMAINDomain for which to issue the SSL certificate using Certbot. your-domain.com -
(Optional) Enable TLS/SSL
To enable HTTPS with TLS/SSL, configure Certbot by following the Certbot Configuration Guide. Ensure that you update the
.envfile with your certificate details and setNGINX_HTTPS_ENABLEDtotrue.You can also use existing certificate files directly by specifying their paths in the
.envfile. Refer to the environment variable settings in the table above for more details. -
Start the WebDAV Service
Launch the service using Docker Compose:
docker compose up -d
The service will start with the configurations defined in your
.envfile.
Once the service is running, you can access the file browser at:
# http
http://{YOUR_SERVER_URL}/fb
# with TLS/SSL
https://{YOUR_SERVER_URL}/fb For example: http://localhost/fb.
- Username:
admin - Password:
admin
It is recommended to change these credentials immediately after your first login. You can update them in the settings page.

- WebDAV Authentication: The WebDAV username and password are configured in the .env file and are different from the Filebrowser credentials.
- Certbot Setup: Ensure you set up Certbot correctly if you plan to use HTTPS.
- Permission Issue: If you encounter any permission issues, please ensure that all folders and files within
./volumes/webdav/dataare correctly owned by the user and group82:82.
This project builds upon and integrates several excellent tools and projects. Special thanks to the developers and maintainers of the following:
- bytemark/webdav: A Docker solution for WebDAV.
- Filebrowser: A fantastic open-source file browser for managing files via a web UI.
- Certbot: A tool that automates the process of setting up and managing TLS/SSL certificates.
- Nginx: A powerful and flexible web server and reverse proxy.
- Docker Compose: Simplifies multi-container Docker applications.
These projects made AutoDav possible. Explore and support these tools to enhance your development experience!