Skip to content

Radicale

约 566 字大约 2 分钟

同步通讯录

2025-08-20

简介

radicale.png

Docker-Radicale,CalDAV/CardDAV 服务器.

Docker Hub:tomsquest/docker-radicale

Github:docker-radicale

Compose 配置

version: "3.9"

services:
  radicale:
    image: tomsquest/docker-radicale:latest
    container_name: radicale
    ports:
      - "5232:5232"
    init: 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: always
    environment:
      # 禁用容器尝试 chown 数据目录
      TAKE_FILE_OWNERSHIP: "false"
      UID: 1026
      GID: 100
    volumes:
      - /volume2/Docker/radicale/data:/data

配置提示

  • 本方案禁用容器尝试 chown 数据目录,自定义详细配置参照 Custom User/Group ID for the data volume

  • 获取用户的UID、GID等信息,使用 id <用户名>

    sa6400@SA6400:/$ id sa6400
    uid=1000(sa6400) gid=100(users) groups=100(users)

软件使用

  1. 配合 vCards CN**

    GitHub 项目地址:metowolf/vCards

    添加 CardDav 服务器 Radicale 输出格式的支持,只需运行:

    npm run-script radicale
  2. 访问网页创建账户

    网址:ip:5232 ,并创建 UsernamecnPasswordcn 的账户

    image-20250821184246845

  3. 导入 vcard 通讯录

    将 radicale 格式的 .vcf 文件批量复制到 Docker 文件夹

    路径:

    /volume2/Docker/radicale/data/collections/collection-root/cn

    此处的 cn 为创建用户名后自动生成

  4. 刷新网页查看成果

    image-20250821185712576

  5. 群晖反代服务地址

    「控制面板」→「登陆门户」→「高级」→「反向代理服务器」→「新增」

    image-20250821190844974

  6. 手动订阅 CardDAV 服务

    • 服务器:vcards.metowolf.com
    • 用户名:cn
    • 密码:cn
    iOS

    「设置」→「通讯录」→「账户」→「添加账户」→「其他」→「添加 CardDAV 账户」

    参考:官方文档

添加计划任务

  • 群晖计划任务

    「控制面板」→「任务计划」→「新增」→「计划的任务」→「用户定义的脚本」

    常规

    任务名称:radicale

    用户账号:user

    注:与 docker 使用的 UID、GID 对应用户保持一致