Steven Polley
496f9a554b
All checks were successful
continuous-integration/drone/push Build is passing
36 lines
2.3 KiB
Markdown
36 lines
2.3 KiB
Markdown
[![Build Status](https://drone.deadbeef.codes/api/badges/steven/docker-webdav-apache/status.svg)](https://drone.deadbeef.codes/steven/docker-webdav-apache)
|
|
|
|
# docker-webdav-apache
|
|
|
|
#### Via Docker Compose:
|
|
|
|
```
|
|
version: '3'
|
|
services:
|
|
webdav:
|
|
image: registry.deadbeef.codes/docker-webdav-apache:latest
|
|
restart: always
|
|
ports:
|
|
- "80:80"
|
|
environment:
|
|
AUTH_TYPE: Digest
|
|
USERNAME: alice
|
|
PASSWORD: secret1234
|
|
volumes:
|
|
- /srv/dav:/var/lib/dav
|
|
|
|
```
|
|
### Environment variables
|
|
|
|
All environment variables are optional. You probably want to at least specify `USERNAME` and `PASSWORD` (or bind mount your own authentication file to `/user.passwd`) otherwise nobody will be able to access your WebDAV server!
|
|
|
|
* **`SERVER_NAMES`**: Comma-separated list of domains (eg, `example.com,www.example.com`). The first is set as the [ServerName](https://httpd.apache.org/docs/current/mod/core.html#servername), and the rest (if any) are set as [ServerAlias](https://httpd.apache.org/docs/current/mod/core.html#serveralias). The default is `localhost`.
|
|
* **`LOCATION`**: The URL path for WebDAV (eg, if set to `/webdav` then clients should connect to `example.com/webdav`). The default is `/`.
|
|
* **`AUTH_TYPE`**: Apache authentication type to use. This can be `Basic` (best choice for HTTPS) or `Digest` (best choice for HTTP). The default is `Basic`.
|
|
* **`REALM`**: Sets [AuthName](https://httpd.apache.org/docs/current/mod/mod_authn_core.html#authname), an identifier that is displayed to clients when they connect. The default is `WebDAV`.
|
|
* **`USERNAME`**: Authenticate with this username (and the password below). This is ignored if you bind mount your own authentication file to `/user.passwd`.
|
|
* **`PASSWORD`**: Authenticate with this password (and the username above). This is ignored if you bind mount your own authentication file to `/user.passwd`.
|
|
* **`ANONYMOUS_METHODS`**: Comma-separated list of HTTP request methods (eg, `GET,POST,OPTIONS,PROPFIND`). Clients can use any method you specify here without authentication. Set to `ALL` to disable authentication. The default is to disallow any anonymous access.
|
|
* **`SSL_CERT`**: Set to `selfsigned` to generate a self-signed certificate and enable Apache's SSL module. If you specify `SERVER_NAMES`, the first domain is set as the Common Name.
|
|
|