A Docker repository to have a simple Caddy+Keeweb+Webdav solution.
The focus of this repository is simplicity so you can roll your own auto hosted Keeweb and Webdav solution.
You can use Keepass synchronisation with the following url:
https://example.com/database.kdbx
Pretty simple:
- Caddy in http mode with webdav extension;
- Keeweb with a special config removing unused options by default.
Caddy is configured to serve all files ending in .kdbx
through webdav without authentication, for ease of use.
⚠ This will not be secured by https
! ⚠
docker run -p 8080:8080 slurdge/keewebdav
You can use the following docker-compose.yml
file with traefik v2:
version: '2'
services:
keeweb:
image: slurdge/keewebdav:latest
container_name: keeweb
restart: always
volumes:
- ./data:/srv/dav
labels:
- "traefik.http.routers.keeweb.rule=Host(`example.com`)"
- "traefik.http.routers.keeweb.tls.certresolver=le"
networks:
- proxy
networks:
proxy:
external: true
You can use the following docker-compose.yml
file with traefik v1:
version: '2'
services:
keeweb:
image: slurdge/keewebdav:latest
container_name: keeweb
restart: always
volumes:
- ./data:/srv/dav
labels:
- "traefik.enable=true"
- "traefik.port=8080"
- "traefik.frontend.rule=Host:example.com"
- "traefik.docker.network=proxy"
networks:
- proxy
networks:
proxy:
external: true
Both examples supposes that there is a network named 'proxy' that is used by traefik.
It's pretty easy to add http-auth to caddy and even https. Please send PR if you want this functionality included.