services: radicale: image: tomsquest/docker-radicale:3.5.5.0 container_name: radicale ports: - 5232 init: true read_only: true security_opt: - no-new-privileges:true cap_drop: - ALL cap_add: - SETUID - SETGID - CHOWN - KILL deploy: resources: limits: memory: 256M pids: 50 healthcheck: test: curl -f http://127.0.0.1:5232 || exit 1 interval: 30s retries: 3 restart: unless-stopped volumes: - data:/data labels: - "traefik.enable=true" - "traefik.http.routers.radicale.rule=Host(`radicale.lan`)" networks: - default - proxy volumes: data: driver: local driver_opts: type: 'none' o: 'bind' device: '/app/radicale/data' networks: proxy: external: true name: proxy