selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

GitHub
Docker-Radicale logo

Self-host Docker-Radicale

3.9.0.0

Hardened Docker image for Radicale CalDAV/CardDAV server

ReleaseOpen SourceGPL-3.0
Updated10 hours ago
LanguagePython
Setup difficultyEasy
Stars
1 108
Port
5232 (CalDAV/CardDAV server)
Docker
tomsquest/docker-radicale
Install with Docker Compose

What is Docker-Radicale?

Docker-Radicale is a hardened Docker image for the Radicale CalDAV/CardDAV server. It provides a production-ready container that runs as a non-root user with read-only filesystem, dropped capabilities, and resource limits. The image supports both amd64 and arm64 architectures, includes git and SSH for versioning, LDAP authentication support, and bcrypt/argon2 password hashing. Configuration can be done via environment variables (RADICALE_CONFIG_*) or a custom config file. It offers multiple options for handling file permissions on mounted volumes. The image is built daily from Alpine Linux for security patches and version tags follow the Radicale version plus an image revision number.

Should you self-host Docker-Radicale?

Docker-Radicale scores 58/100 on selfhost.directory (how scoring works) and ranks #6 of 30 in Calendar & Contacts. It has 1 108 GitHub stars.

It shipped 10 stable releases in the past year. The latest, 3.9.0.0, came out on 26 October 2026. New versions land roughly every 2 weeks.

Setup is easy: most people get it running in one sitting. An official Docker image is available. It is GPL-3.0-licensed and written mostly in Python.

Its closest alternative on selfhost.directory is Radicale (69/100, 5 152 stars). It scores higher overall, so compare the two before you pick. See Docker-Radicale vs Radicale side by side.

Features

  • CalDAV/CardDAV server
  • Content Security Policy
  • Custom user/group IDs
  • Daily security updates
  • Environment Variable Configuration
  • Git versioning
  • Health Checks
  • LDAP Authentication
  • Password hashing
  • Security hardening
  • Timezone handling

Docker-Radicale README

How to install Docker-Radicale

Install Docker-Radicale with Docker Compose

Environment variables
RADICALE_CONFIG_*, TAKE_FILE_OWNERSHIP, UID, GID

services: radicale: image: tomsquest/docker-radicale container_name: radicale ports: - 127.0.0.1:5232: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

Production-grade compose file included

How to configure Docker-Radicale

  • BUILD_GID2999Build-time group ID for custom image build

    Build-time group ID for custom image build

    values: numeric group ID

  • BUILD_UID2999Build-time user ID for custom image build

    Build-time user ID for custom image build

    values: numeric user ID

  • GID2999Force group ID for container operations

    Force group ID for container operations

    values: numeric group ID

  • RADICALE_CONFIG_AUTH_TYPEnoneAuthentication method

    Authentication method

    values: none | htpasswd | remote_user | http_remote_user | http_x_remote_user | dovecot | ldap | oauth2 | pam | denyall

  • RADICALE_CONFIG_SERVER_HOSTS0.0.0.0:5232CalDAV server hostnames and ports

    CalDAV server hostnames and ports

    values: IPv4/IPv6 address:port or hostname:port

  • RADICALE_CONFIG_STORAGE_FILESYSTEM_FOLDER/data/collectionsFolder for storing local collections

    Folder for storing local collections

    values: filesystem path

  • TAKE_FILE_OWNERSHIPtrueWhether container should fix permissions on data directory

    Whether container should fix permissions on data directory

    values: true | false

  • UID2999Force user ID for container operations

    Force user ID for container operations

    values: numeric user ID

Docker-Radicale releases & version history

More in Calendar & Contacts

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…