Vikunja 2.7.1 介绍与选型指南
Vikunja 开源自托管待办与任务管理应用认知选型:产品定位、单二进制架构、四视图与 CalDAV 特性、v2.7.1 安全态势、与 Wekan/Kanboard/Planka/OpenProject/Focalboard 的量化对比表(2026-10-25 溯源)。
Vikunja 2.7.1 介绍与选型指南
目标:通过官方文档、GitHub 镜像仓库与发行渠道溯源,梳理 Vikunja 的产品定位、技术架构、功能特性、适用场景与同类工具的量化对比,为个人与小团队自托管任务管理选型提供决策依据。本文为认知选型篇,全部数据来自联网溯源(来源与查询日期逐条标注),不涉及本地部署实测;安装与部署实测见本专栏后续篇目。
一、环境信息
本篇为联网溯源文档,不涉及本地实验环境。溯源基线如下,后续篇目(安装、部署、配置)均以该版本为准实测。
- 溯源对象:Vikunja 官方站点与文档(vikunja.io)、GitHub 镜像仓库(github.com/go-vikunja/vikunja)、官方下载站(dl.vikunja.io)、Artifact Hub(artifacthub.io)
- 溯源查询日期:2026-10-25
- 最新稳定版本:v2.7.1(2026-10-20 发布,含 41 项安全修复,来源:GitHub Releases 页)
- 数据取证方式:GitHub Releases 页 HTML、shields.io 徽章 JSON 接口、官方文档站页面,未使用 GitHub API
二、软件概述
Vikunja(发音 /vɪˈkuːnjə/,南美羊驼属动物,与 llama 同科)是一款开源、可自托管的待办事项(To-Do)与任务管理 Web 应用,主打"一个工具组织一切":同一批任务可以在列表、甘特图、表格、看板四种视图间自由切换。项目由 Frederic 主导开发,主仓托管在作者自建 Gitea(code.vikunja.io/vikunja),GitHub 上的 go-vikunja/vikunja 为官方镜像仓。
软件身份速查(查询日期 2026-10-25):
| 维度 | 取值 | 来源 |
|---|---|---|
| 最新稳定版 | v2.7.1(2026-10-20) | GitHub Releases 页 |
| 开源协议 | AGPL-3.0 | shields.io license 徽章 |
| GitHub Stars | 约 5.8k | shields.io stars 徽章 |
| 最近提交 | 活跃(查询当日有提交) | shields.io last-commit 徽章 |
| 技术栈 | 后端 Go(v2.7.1 由 go1.27.3 构建)、前端 Vue 3 | 官方文档 / 二进制实测 |
| 数据库 | SQLite(内置)、MySQL 8.0+ / MariaDB 10.2+、PostgreSQL 12+ | 官方安装文档 |
| 部署形态 | 单二进制、deb/rpm/apk/pacman 仓库、Docker 镜像、官方 Helm Chart | 官方安装文档 |
| 商业模式 | 自托管免费;Vikunja Cloud(官方托管)与 Vikunja Pro(企业功能许可) | 官网 |
| 客户端 | Web、桌面端(Win/macOS/Linux)、移动端(基础功能) | 官方文档 |
💡 技术拓展:AGPL-3.0 与常见 copyleft 协议对比——AGPL-3.0 要求"通过网络提供服务"也需开放源码(SaaS 场景传染性最强);GPL-3.0 只管分发不管网络服务;MIT/Apache-2.0 为宽松协议可闭源商用。Vikunja 选 AGPL-3.0 意味着:企业内部自托管自用无额外义务,但若把它改造成对外 SaaS 服务则必须开源改动。
三、核心架构
Vikunja 的交付物形态非常简洁:API 后端与 Vue 前端打包进同一个可执行文件(或同一个 Docker 镜像),部署时只需要安装一个组件。架构要点如下(来源:官方安装文档、配置文档):
3.1 进程架构
- 单一 Go 进程同时承担 REST API 服务与前端静态资源托管,默认监听
:3456。 - 无外部消息队列、无独立 worker 进程;定时提醒等后台任务由进程内调度完成。
- 多副本水平扩展时官方要求配 Redis/Valkey 缓存(Helm Chart 文档明确说明)。
3.2 数据与存储
- 元数据存数据库:SQLite(零依赖,随二进制内置)、MySQL/MariaDB、PostgreSQL 三选一。
- 附件文件默认落本地磁盘(
files.basepath),可切换 S3 兼容对象存储(MinIO、Backblaze 等)。 - 缓存与限流计数默认走本地 keyvalue 存储,可切换 Redis。
- 全文搜索:PostgreSQL 后端可启用 ParadeDB 扩展增强搜索(v2.6+,官方 Docker 示例直接给出 paradedb 镜像替换法)。
3.3 接口面
- REST API:完整 OpenAPI 规范(官方文档站可下载),覆盖任务、项目、标签、团队、分享、通知等全部资源。
- CalDAV 端点:默认启用,可把任务同步到 Thunderbird Tasks、iOS 提醒事项等 CalDAV 客户端。
- Webhooks:项目级与用户级 Webhook(v2.2 起支持用户级)。
- 认证:本地账号(bcrypt 哈希)、LDAP、OpenID Connect(可对接 Keycloak/Authentik 等 IdP),v2.3 起 Vikunja 自身还可作为 OAuth 2.0 Provider。
3.4 安全模型
v2.7.1(2026-10-20)一次性修复 41 项安全问题(2 高危、24 中危、15 低危,来自社区报告 + 自动化审计),并引入集中式 SSRF 防护;发布产物自该版本起提供 cosign 签名与构建溯源(provenance attestation)。该版本属于"应尽快升级"的安全密集版本(来源:官方 changelog《Vikunja 2.7.1 was released》,2026-10-20)。
四、功能特性
以下特性清单来自官方文档与 v2.x 各版本 changelog(查询日期 2026-10-25):
4.1 任务与项目组织
- 四视图自由切换:列表(List)、甘特图(Gantt,支持子任务层级与依赖箭头)、表格(Table)、看板(Kanban);同一份数据四种投射。
- 层级与关系:项目支持父子层级;任务支持子任务、前后置依赖、重复周期(如"每月最后一天"这类复杂规则)。
- 任务要素:到期时间、提醒(邮件/应用内)、优先级、标签、负责人指派、附件、评论、清单(Checklist 完成度指示)。
- 快速添加(Quick Add Magic):在任务标题里用自然语法直接写日期、优先级、标签、负责人(如"写报告 *高 @admin !2026-10-30"风格语法),v2.5 起粘贴多行清单可一次性批量建任务。
4.2 协作与分享
- 团队(Team)机制 + 项目按用户/团队授权(只读/读写/管理员三档)。
- 链接分享:项目可生成只读/可写公开链接(可用
service.enablelinksharing全局关闭)。 - 通知:邮件提醒、实例内通知中心;邮件变更流程在 v2.6 重做。
4.3 导入迁移与集成
- 内置迁移器(v2.7.1 实测
/api/v1/info返回):vikunja-file(Vikunja 自导出)、ticktick(滴答清单)、wekan、csv、planka;早期版本另有 Trello、Todoist、Microsoft To Do 迁移器。 - CalDAV 双向同步;iCal 订阅源导入。
- 桌面端(Electron 打包的 Web 前端)与移动端 App(当前仅覆盖基础功能)。
4.4 管理面
- 完整 CLI:
doctor诊断、dump/restore备份恢复、migrate数据库迁移、repair数据修复、user用户管理、testmail邮件测试(详见本专栏 CLI 篇)。 - 可观测:
/api/v1/info实例信息、Prometheus metrics 端点(默认关闭)、结构化 JSON 日志。 - 合规项:可配置 Imprint/Privacy 链接;审计日志(v2.x 新增
audit配置段)。
五、快速开始(最小可用示例)
以下命令摘自官方安装文档(vikunja.io/docs/installing,查询日期 2026-10-25),用于快速体验;生产部署请按本专栏《Ubuntu 22.04 安装 Vikunja 2.7.1 指南》或《Vikunja 2.7.1 Docker Compose 部署指南》执行。
Docker 一行起服务(SQLite 后端,数据落当前目录):
mkdir $PWD/files $PWD/db
chown 1000 $PWD/files $PWD/db
docker run -p 3456:3456 -v $PWD/files:/app/vikunja/files -v $PWD/db:/db vikunja/vikunja
官方二进制安装(以 v2.7.1 linux-amd64 为例):
wget https://dl.vikunja.io/vikunja/v2.7.1/vikunja-v2.7.1-linux-amd64-full.zip
unzip vikunja-v2.7.1-linux-amd64-full.zip -d /opt/vikunja
chmod +x /opt/vikunja/vikunja
/opt/vikunja/vikunja
两条路径启动后均监听 :3456,浏览器访问 http://<服务器地址>:3456 注册首个账号即可使用(Vikunja 无默认账号,首个注册用户即实例的第一个用户)。
⚠️ 注意:自 v2.x 起默认开启 CORS,要求必须设置
service.publicurl(用户访问实例的完整 URL,需以/结尾);不配 publicurl 时应显式关闭 CORS(cors.enable: false),否则前端与 API 通信会被浏览器拦截。
六、适用场景与限制
6.1 适用场景
- 个人与家庭任务管理:自托管诉求强、注重数据主权的个人用户;四视图里甘特图对个人计划类场景尤其顺手。
- 小团队项目协作:几个到几十人的团队,任务分派 + 看板推进 + CalDAV 日历联动的组合完整够用。
- 从 SaaS 迁出的用户:内置 TickTick/Trello/Wekan/Planka/CSV 迁移器,迁移路径平滑。
- 需要私有部署的合规场景:AGPL + 全自托管 + 可对接内部 LDAP/OIDC,满足内网隔离与身份源统一。
6.2 限制与边界(官方文档明示)
- 移动端能力有限:官方明确"移动端目前只支持非常基础的功能",重移动场景需以 Web/桌面端为主。
- MySQL 版本门槛:MySQL 5.7 不受支持(缺递归 CTE 与窗口函数),须 8.0+;MariaDB 须 10.2+;PostgreSQL 须 12+(CI 实测覆盖 MySQL 8、MariaDB 12、PostgreSQL 18)。
- 多副本扩展需外置缓存:水平扩副本时必须配 Redis/Valkey,否则缓存与限流状态在多副本间不一致。
- 默认不限流:登录等匿名接口有内置兜底限速(
ratelimit.noauthlimit默认 10 次/分钟),但整体限流默认关闭,公网暴露建议显式开启。 - Pro 功能需许可:实例管理员面板等少量功能属 Vikunja Pro(未配 license 时日志会提示 "Pro features have been disabled",不影响核心功能)。
七、同类选型对比
选自托管任务/项目管理工具时,常进入候选清单的有 Wekan、Kanboard、Planka、OpenProject、Focalboard。以下量化数据均通过 shields.io 徽章与 GitHub Releases 页取证(查询日期 2026-10-25):
| 维度 | Vikunja | Wekan | Kanboard | Planka | OpenProject | Focalboard |
|---|---|---|---|---|---|---|
| GitHub Stars | 5.8k | 21k | 9.9k | 13k | 17k | 27k |
| 最新版本 | v2.7.1(2026-10) | v12.64 | v1.2.56 | v2.2.1 | v17.9.3 | v8.0.0 |
| 技术栈 | Go + Vue | Meteor/Node | PHP | React + Node | Ruby on Rails | Go + React |
| 视图形态 | 列表/甘特/表格/看板 | 看板/泳道 | 看板/甘特/列表 | 看板(Trello 式) | 全套 PM(甘特/看板/敏捷/成本) | 看板/表格 |
| 待办清单定位 | 强(任务为中心) | 弱(卡片为中心) | 中 | 弱 | 弱(项目为中心) | 弱 |
| CalDAV 同步 | 内置 | 无 | 无 | 无 | 无 | 无 |
| 迁移器生态 | TickTick/Trello/Wekan/Planka/CSV | Trello/Wekan 等 | 有限 | Trello 导入 | 多种导入 | 有限 |
| 项目活跃度 | 高(查询当日有提交) | 高 | 中 | 高 | 高 | 已停止维护(Mattermost 归档) |
| 协议 | AGPL-3.0 | MIT | MIT | AGPL-3.0 | GPL-3.0 | 双许可 |
| 资源占用 | 低(单 Go 进程,实测内存约 120MB) | 中(Meteor 较重) | 低 | 低 | 高(Ruby 全家桶) | 低 |
选型建议("如果…则…"):
- 如果你要的是任务/待办为中心 + 多视图 + CalDAV,选 Vikunja——这是它与看板类工具(Wekan/Planka/Kanboard)最根本的定位差异:Vikunja 的数据模型以任务为核心,看板只是其四种视图之一。
- 如果你要纯 Trello 式看板且团队已熟悉看板心智,选 Planka(现代化、活跃)或 Wekan(功能厚、星数高)。
- 如果你要极简 PHP 看板 + 插件生态,选 Kanboard。
- 如果你要的是企业级项目管理(预算、成本、敏捷仪式、工时),选 OpenProject——它对"个人待办"反而是重炮打蚊子。
- Focalboard 虽星数最高但仓库已被 Mattermost 归档停止维护,不建议新项目采用。
八、参考链接
- 官网与产品定位:https://vikunja.io/
- 官方文档站(安装/配置/CLI):https://vikunja.io/docs/
- GitHub 镜像仓(Releases 页取证 v2.7.1):https://github.com/go-vikunja/vikunja/releases
- v2.7.1 发布说明(41 项安全修复):https://vikunja.io/changelog/vikunja-2.7.1-was-released/
- 官方下载站(二进制/安装包):https://dl.vikunja.io/vikunja/
- 官方 Helm Chart 仓库:https://github.com/go-vikunja/helm-chart
- 安装向导(交互式生成命令):https://vikunja.io/install