Repolode
tchapi

tchapi/davis

一个自托管的 CalDAV、CardDAV 和 WebDAV 服务器,附带基于 Symfony 的管理后台,用于管理用户、日历和通讯录。

可替代:Google Calendar

Star
763
Fork
44
未关闭 Issue
13
最近提交
前天

这是什么?

Davis 是一个基于 sabre/dav 和 Symfony 7 构建的 DAV 服务器,自带管理后台。可以创建用户、日历和通讯录,在日历之间与其他用户共享,并通过支持明暗两种模式的响应式 Bootstrap 5 界面完成管理。它可以作为 Baïkal 的替代方案,已有的 Baïkal 数据库也能迁移过来。

协议方面支持 CalDAV、CardDAV 和 WebDAV,并提供日历共享、日程调度以及客户端支持时的服务端订阅。认证方式包括 HTTP Basic,以及通过外部服务接入的 IMAP 和 LDAP。另外还支持通过链接访问的公共日历,以及随联系人生日自动更新的生日日历。

项目提供 Dockerfile、示例 docker-compose 配置和预构建镜像(其中一个内置 Caddy 反向代理),也有 NixOS 包和模块。数据库支持 MySQL/MariaDB、PostgreSQL 和 SQLite,并提供用于管理用户与日历的 API。

核心功能

  • 01Web 后台可创建用户、日历和通讯录,并支持日历共享
  • 02支持 CalDAV、CardDAV 和 WebDAV,并包含日程调度与邮件通知
  • 03认证方式包括 HTTP Basic、IMAP 和 LDAP
  • 04公共日历可通过链接分享
  • 05根据联系人生日自动同步生日日历
  • 06提供 Docker 镜像和 NixOS 模块

适用场景

  • 在自有服务器上为手机和桌面客户端同步日历与联系人
  • 用界面更现代的服务器替换 Baïkal
  • 为小团队在私有服务器上提供共享日历和通讯录
  • 在 SSO 或 IMAP/LDAP 登录之后运行 DAV 后端

快速上手

  1. 1

    克隆本仓库

  2. 2

    使用 Composer 安装 PHP 依赖

    composer install
  3. 3

    在 .env.local 中设置数据库驱动和连接地址

  4. 4

    运行数据库迁移以创建所需表

    bin/console doctrine:migrations:migrate

使用前须知

  • 需要 PHP 8.2 或更高版本,并启用 pdo_mysql、gd 和 intl 扩展,另需 Composer 2。
  • PostgreSQL 和 SQLite 测试不充分,推荐使用 MySQL 或 MariaDB。
  • IMAP 和 LDAP 认证需要额外的 PHP 扩展,除 Docker 镜像外默认未启用。

收录于专题

标签

常见问题

davis 是什么?
一个自托管的 CalDAV、CardDAV 和 WebDAV 服务器,附带基于 Symfony 的管理后台,用于管理用户、日历和通讯录。 Davis 是一个基于 sabre/dav 和 Symfony 7 构建的 DAV 服务器,自带管理后台。可以创建用户、日历和通讯录,在日历之间与其他用户共享,并通过支持明暗两种模式的响应式 Bootstrap 5 界面完成管理。它可以作为 Baïkal 的替代方案,已有的 Baïkal 数据库也能迁移过来。
davis 可以免费使用吗?用的什么许可证?
davis 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
davis 还在维护吗?
活跃维护中。davis 最近一次提交是在 2026年11月5日。
davis 适合用来做什么?
在自有服务器上为手机和桌面客户端同步日历与联系人 用界面更现代的服务器替换 Baïkal 为小团队在私有服务器上提供共享日历和通讯录 在 SSO 或 IMAP/LDAP 登录之后运行 DAV 后端
davis 怎么安装和运行?
克隆本仓库 使用 Composer 安装 PHP 依赖: composer install 在 .env.local 中设置数据库驱动和连接地址 运行数据库迁移以创建所需表: bin/console doctrine:migrations:migrate
在哪里获取 davis?
源代码和安装说明在 GitHub 上:https://github.com/tchapi/davis

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目