{"id":37979675,"url":"https://github.com/xlrl/docker-radicale","last_synced_at":"2026-01-16T18:33:21.069Z","repository":{"id":54202481,"uuid":"114166277","full_name":"xlrl/docker-radicale","owner":"xlrl","description":"The Radicale CalDAV/CardDAV server as a Docker image.","archived":false,"fork":false,"pushed_at":"2026-01-10T18:30:32.000Z","size":49,"stargazers_count":14,"open_issues_count":0,"forks_count":4,"subscribers_count":2,"default_branch":"main","last_synced_at":"2026-01-11T05:32:09.505Z","etag":null,"topics":["docker-container","docker-image","radicale-caldav"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/xlrl.png","metadata":{"files":{"readme":"README.md","changelog":"Changelog.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2017-12-13T20:35:37.000Z","updated_at":"2026-01-10T18:30:37.000Z","dependencies_parsed_at":"2025-05-11T20:35:00.495Z","dependency_job_id":null,"html_url":"https://github.com/xlrl/docker-radicale","commit_stats":null,"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"purl":"pkg:github/xlrl/docker-radicale","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xlrl%2Fdocker-radicale","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xlrl%2Fdocker-radicale/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xlrl%2Fdocker-radicale/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xlrl%2Fdocker-radicale/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/xlrl","download_url":"https://codeload.github.com/xlrl/docker-radicale/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xlrl%2Fdocker-radicale/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28480931,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-16T11:59:17.896Z","status":"ssl_error","status_checked_at":"2026-01-16T11:55:55.838Z","response_time":107,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["docker-container","docker-image","radicale-caldav"],"created_at":"2026-01-16T18:33:20.319Z","updated_at":"2026-01-16T18:33:21.044Z","avatar_url":"https://github.com/xlrl.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# docker-radicale\n\nThe Radicale CalDAV/CardDAV server as a Docker container.\n\nFor changes take look at [Changelog.md](Changelog.md).\n\n## Quickstart\n\nCreate the radicale data directory containing a minimal configuraion. We assume the directory _/srv/radicale/data_.\n\nMinimal configuration _/srv/radicale/data/config.ini_:\n\n```ini\n[auth]\ntype = htpasswd\n# note: that's a path inside the container\nhtpasswd_filename = /var/radicale/users\n# encryption method used in the htpasswd file\nhtpasswd_encryption = bcrypt\n\n[server]\nhosts = 0.0.0.0:8000\n\n[storage]\nfilesystem_folder = /var/radicale/collections\n```\n\nRun the docker image, and connect it to the HTTP port 80:\n\n```shell\ndocker run  -v /srv/radicale/data:/var/radicale -p80:8000  -n radicale xlrl/radicale\n```\n\nCreate some users:\n\n```shell\n# Create a new htpasswd file with the user \"user1\"\ndocker exec -ti radicale htpasswd -B -c /var/radicale/users user1\nNew password:\nRe-type new password:\n# Add another user\ndocker exec -ti radicale htpasswd -B /var/radicale/users user2\nNew password:\nRe-type new password:\n```\n\nNow point your web browser to the address of the docker server. You should\nbe presented with the Radicale login.\n\n## Configuration using docker-compose\n\nTo launch your container with docker-compose you can use this sample :\n\n```yaml\nservices:\n  radicale:\n    build: .\n    container_name: radicale\n    environment:\n      - GIT_REPOSITORY=https://user:password@github.com/user/repo\n      - GIT_USERNAME=username\n      - GIT_EMAIL=usermail@mail.com\n      - RADICALE_USER=username\n      - RADICALE_PASS=userpassword\n    ports:\n      - \"8000:8000\"\n    volumes:\n      - /srv/radicale:/var/radicale\n```\n\nEnvironment variables :\n\n|Variable|Descriptions|\n|------|------|\n|GIT_REPOSITORY| Your git repo with your username or your password if it's a private repo |\n|GIT_USERNAME|Your name for the git signature|\n|GIT_EMAIL|Your mail for the git signature|\n|RADICALE_USER|Your radicale user|\n|RADICALE_PASS|The password for your user|\n\n## Versioning\n\nVersion the changes to your __radicale__ data your changes using __GIT__.\n\nCreate a _.gitignore_ file in _srv/radicale/data_:\n\n```text\n.Radicale.cache\n.Radicale.lock\n.Radicale.tmp-*\n```\n\nConfigure the __GIT__ hook in _/srv/radicale/data/config.ini_:\n\n```ini\n[storage]\nfilesystem_folder = /var/radicale/collections\nhook = git add -A \u0026\u0026 (git diff --cached --quiet || git commit -m \"Changes by \"%(user)s)\n```\n\nInitialize the __GIT__ repository:\n\n```shell\ndocker@myhost ~ # cd /srv/radicale/data\ndocker@myhost /srv/radicale/data # git init\nInitialized empty Git repository in /srv/radicale/data/.git/\ndocker@myhost /srv/radicale/data # git add .\ndocker@myhost /srv/radicale/data # git commit -m \"Initial commit.\"\n[master (root-commit) abcdefab] Initial commit.\n 5 files changed, 17 insertions(+)\n create mode 100644 .gitignore\n create mode 100644 config.ini\n create mode 100644 users\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxlrl%2Fdocker-radicale","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fxlrl%2Fdocker-radicale","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxlrl%2Fdocker-radicale/lists"}