今天推荐一个款轻量级、自托管的记账工具,支持网页和移动端。它支持多语言、多币种、汇率查询等,并可以设置 PIN 保护自己的隐私数据。记账软件部署在 NAS中,数据都在本地更安心可控。


🧾 详细介绍

ezBookkeeping 是一款轻量级、可自行托管的个人理财应用,拥有用户友好的界面和强大的记账功能。它部署简便,只需一条 Docker 命令即可启动。设计高效利用资源并具有高度可扩展性,既可在树莓派等小型设备上流畅运行,也可扩展到 NAS、微型服务器,甚至大型集群环境。也为移动设备和桌面设备都提供了定制化的界面。它支持 PWA(渐进式 Web 应用),甚至可以将其添加到手机主屏幕,像使用原生应用一样使用它。


🖼️ 预览

预览图片来自 ezBookkeeping 官网


✨ 核心功能

  • 🛡️开源自托管:保障隐私与数据控制。

  • 轻量高效:低资源设备也能流畅运行。

  • 📦安装简便:支持 Docker,跨平台,适用于 x86、amd64、ARM 架构。

  • 📱 用户友好界面:适配移动与桌面,WA 支持,接近原生体验。

  • 🧠 AI 驱动功能;收据图像识别 , 支持 MCP 协议,便于 AI 集成。

  • 🌍 本地化与全球化 :多语言 & 多币种 ,自动汇率 ,多时区支持。

  • 🔐 安全保障;双因素认证(2FA),登录速率限制,应用锁定(PIN/WebAuthn)。

  • 📤 数据导入导出:支持 CSV、OFX、QFX等格式。


🐳部署指南

🎯 Docker命令

docker run -d \
  --name ezbookkeeping \
  -p 8989:8080 \
  -v $(pwd)/data:/ezbookkeeping/data \
  -v $(pwd)/storage:/ezbookkeeping/storage \
  mayswind/ezbookkeeping

🎯 Docker Compose(本教程使用)

docker-compose.yml

services:
  ezbookkeeping:
    image: mayswind/ezbookkeeping
    container_name: ezbookkeeping
    restart: unless-stopped
    ports:
      - "8989:8080"
    environment:
      - "EBK_SERVER_ENABLE_GZIP=true"
      - "EBK_LOG_MODE=file"
      - "EBK_SECURITY_SECRET_KEY=r4LepdGNtWZCZbQyd8cA" # 改成随机密钥
    volumes:
      - "/etc/localtime:/etc/localtime:ro"
      - "./ezbookkeeping/storage:/ezbookkeeping/storage" #
      - "./ezbookkeeping:/ezbookkeeping/log"

1. 在飞牛主页面找到 Docker 切换菜单 Compose -> 新增项目

2. 填写项目名称与路径,将 docker-compose.yml 内容粘贴到来源框

3. 返回 Docker管理页面,在 容器菜单,就可以看到运行情况


📖使用

浏览器打开 http://nas-ip:8989 访问界面

创建新账号

总览

账户

交易分类

内置的交易分类不够用,可以自行增加分类

交易标签

添加交易标签,之后查账比较方便

交易模板

定时交易

可以设置每个月定时产生的交易,例如:工资,自动扣费业务,基金定投等。

汇率数据

可以查看最新汇率

两步验证(建议开启)

导出数据

应用设置

为了数据安全建议设置应用锁

设置同步可以把移动端和网页端的数据进行同步。

更多用法请参考 官方中文指引


🎉 总结

无论是日常记账、消费分析,还是多币种管理,ezBookkeeping 都能胜任工作。更重要的是,所有财务数据存储在个人设备,无需依赖第三方平台,隐私安全完全由自己掌控。