自托管记账工具(ezBookkeeping)

自托管记账工具(ezBookkeeping)

一、bookkeeping 介绍

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

官网地址:https://github.com/mayswind/ezbookkeeping

  • 开源和自托管

    • 专为隐私和控制而设计

  • 轻便快捷

    • 针对性能进行了优化,即使在资源匮乏的环境下也能流畅运行。

  • 安装简便

    • 支持 Docker

    • 支持 SQLite、MySQL 和 PostgreSQL

    • 跨平台(Windows、macOS、Linux)

    • 适用于 x86、amd64、ARM 架构

  • 用户友好界面

    • 用户界面针对移动设备和桌面设备进行了优化。

    • PWA 支持提供类似原生应用的移动体验

    • 深色模式

  • 人工智能驱动的功能

    • 收据图像识别

    • 支持用于人工智能集成的 MCP(模型上下文协议)

  • 强大的记账功能

    • 两级账户和类别

    • 将图片附加到交易中

    • 利用地图进行位置跟踪

    • 定期交易

    • 高级筛选、搜索、可视化和分析

  • 本地化与全球化

    • 支持多语言和多货币

    • 自动汇率

    • 多时区意识

    • 自定义日期、数字和货币格式

  • 安全

    • 双因素认证(2FA)

    • 登录速率限制

    • 应用程序锁定(PIN码/WebAuthn)

  • 数据导入/导出

    • 支持 CSV、OFX、QFX、QIF、IIF、Camt.053、MT940、GnuCash、Firefly III、Beancount 等多种格式。

二、开始部署

1、Docker Compose

services:
  ezBookkeeping:
    container_name: ezBookkeeping
    ports:
      - 8380:8080
    image: mayswind/ezbookkeeping:latest # 确保使用正确的镜像和标签
    networks:
      - trim-default
    restart: always # 根据需要调整重启策略
    environment:
      EBK_SERVER_DOMAIN: 192.168.100.10   # 主机ip地址
      EBK_ROOT_URL: http://192.168.100.10:8380   # 包括端口
      EBK_LOG_MODE: file
      EBK_SECURITY_SECRET_KEY: its_should_be_a_random_string  # 改成随机32位密钥
      EBK_MCP_ENABLE_MCP: true # AI服务
    volumes:
      - /etc/localtime:/etc/localtime:ro # 同步宿主机时间
      - ./data:/ezbookkeeping/data # SQLite 数据库存放位置
      - ./storage:/ezbookkeeping/storage # 文件存储目录
      - ./log:/ezbookkeeping/log # 日志目录

networks:
  trim-default:
    external: true
    name: trim-default

2、开始构建容器

三、功能演示

MySQL 部署(Docker 方式) 2026-01-21
Java 的核心特点 2026-02-01