53 lines
1.2 KiB
Django/Jinja
53 lines
1.2 KiB
Django/Jinja
# vi: ft=yaml
|
|
version: '3.7'
|
|
|
|
networks:
|
|
traefik:
|
|
external: true
|
|
|
|
configs:
|
|
config:
|
|
file: /srv/radicale/radicale.conf
|
|
users:
|
|
file: /srv/radicale/users
|
|
|
|
services:
|
|
radicale:
|
|
image: tomsquest/docker-radicale
|
|
init: true
|
|
read_only: true
|
|
cap_drop:
|
|
- ALL
|
|
cap_add:
|
|
- SETUID
|
|
- SETGID
|
|
- CHOWN
|
|
- KILL
|
|
healthcheck:
|
|
test: curl -f http://127.0.0.1:5232 || exit 1
|
|
interval: 30s
|
|
retries: 3
|
|
volumes:
|
|
- type: bind
|
|
source: /mnt/data/radicale
|
|
target: /data
|
|
networks:
|
|
- traefik
|
|
deploy:
|
|
placement:
|
|
constraints:
|
|
- "node.labels.radicale == true"
|
|
labels:
|
|
- traefik.enable=true
|
|
- traefik.http.routers.radicale.entrypoints=websecure
|
|
- traefik.http.routers.radicale.rule=Host(`dav.pim.kunis.nl`)
|
|
- traefik.http.routers.radicale.tls=true
|
|
- traefik.http.routers.radicale.tls.certresolver=letsencrypt
|
|
- traefik.http.routers.radicale.service=radicale
|
|
- traefik.http.services.radicale.loadbalancer.server.port=5232
|
|
- traefik.docker.network=traefik
|
|
configs:
|
|
- source: config
|
|
target: /config/config
|
|
- source: users
|
|
target: /config/users
|