核心价值:零基础搭建私有财务系统,实现多账户/多币种管理,告别Excel手工记账!
官方地址:https://github.com/mayswind/ezbookkeeping

一、ezBookkeeping核心定位

解决财务痛点

  • 个人/家庭多账户(银行卡/支付宝/微信)分散管理困难
  • 跨国消费多币种自动换算复杂
  • 手动记账效率低,统计报表生成繁琐
  • 敏感财务数据不愿存储公有云

产品优势

  • 全功能开源:完整复刻"网易有钱"核心功能
  • Docker极简部署:单容器5分钟快速启动
  • 银行级安全:本地存储+SSL加密
  • 多终端支持:Web/Android/iOS全平台覆盖

二、核心功能全景

模块 功能亮点
账户管理 支持银行卡/现金/虚拟账户(支付宝/微信)自动同步
多币种交易 自动汇率换算(对接Yahoo Finance API)
智能记账 账单拍照OCR识别(对接Google ML Kit)
预算控制 自定义分类预算(餐饮/交通/娱乐等),超支实时提醒
数据可视化 动态生成消费趋势图、分类占比饼图、净资产曲线
数据安全 AES-256本地加密存储,支持CSV/Excel导出

三、Docker部署教程(5分钟极速版)

环境准备

# 最低配置要求
- Linux服务器 (1核1G+)
- Docker & Docker Compose
- 域名(可选,推荐配置SSL)

# 创建持久化目录
mkdir -p /opt/ezbookkeeping/{data,logs}

一键部署

# 创建docker-compose.yml
cat > /opt/ezbookkeeping/docker-compose.yml <<EOF
version: '3.8'
services:
  ezbookkeeping:
    image: mayswind/ezbookkeeping:latest
    container_name: ezbookkeeping
    environment:
      - TZ=Asia/Shanghai                  # 时区设置
      - DB_PATH=/data/ezbk.db             # 数据库路径
      - UPLOAD_DIR=/data/uploads          # 账单图片存储
    volumes:
      - ~/ezbookkeeping/data:/data        # 数据持久化
      - ~/ezbookkeeping/logs:/var/log     # 日志持久化
    ports:
      - "8080:8080"                      # 服务端口
    restart: always
EOF

# 启动服务
docker-compose -f /opt/ezbookkeeping/docker-compose.yml up -d

访问控制台

http://服务器IP:8080 → 首次登录创建管理员账户

在这里插入图片描述

导入微信/支付宝等账单

在这里插入图片描述
在这里插入图片描述

导入报错,没有对应的分类和账户
新开个页面添加分类和账户
或者直接单个编辑

在这里插入图片描述

完全导入后结果如下:

在这里插入图片描述

四、配置优化实战

1. HTTPS安全加固(Nginx反向代理)

server {
    listen 443 ssl;
    server_name finance.yourdomain.com;
    
    ssl_certificate /etc/letsencrypt/live/finance.yourdomain.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/finance.yourdomain.com/privkey.pem;
    
    location / {
        proxy_pass http://localhost:8080;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

2. 启用账单OCR识别

# 编辑docker-compose.yml 添加环境变量
environment:
  - ENABLE_OCR=true
  - GOOGLE_ML_API_KEY=your_api_key  # 申请地址:https://cloud.google.com/vision

3. 汇率自动更新

# 每日3点更新汇率
0 3 * * * docker exec ezbookkeeping curl -s https://api.exchangerate-api.com/update

五、典型使用场景

场景1:家庭财务看板

在这里插入图片描述

场景2:多币种自动换算

交易记录 原始币种 换算人民币
Amazon购物 USD ¥ 319.50
日本民宿支付 JPY ¥ 628.40
Steam游戏充值 EUR ¥ 156.80

场景3:预算预警系统

# 超支自动邮件提醒(需配置SMTP)
docker-compose.yml 添加:
  environment:
    - MAIL_ENABLED=true
    - MAIL_HOST=smtp.qq.com
    - MAIL_USER=alert@domain.com

六、数据备份方案

1. 自动数据库备份

# 创建备份脚本 /root/ezbackup.sh
#!/bin/bash
BACKUP_DIR="/backups/ezbookkeeping"
docker exec ezbookkeeping sqlite3 /data/ezbk.db ".backup '$BACKUP_DIR/ezbk-$(date +%Y%m%d).db'"

2. 设置定时任务

# 每天2点备份
0 2 * * * /root/ezbackup.sh

# 保留最近30天备份
0 3 * * * find /backups/ezbookkeeping -mtime +30 -delete

七、故障排查指南

故障现象 排查命令 解决方案
OCR功能失效 docker logs ezbookkeeping 检查Google ML API密钥有效期
汇率未更新 docker exec -it ezbookkeeping sqlite3 /data/ezbk.db “SELECT * FROM exchange_rates” 手动执行更新脚本
无法上传账单图片 ls -l ~/ezbookkeeping/data/uploads 检查目录权限 (chmod 777)
邮件提醒失败 telnet smtp.qq.com 587 测试SMTP端口连通性

八、同类产品对比

特性 ezBookkeeping 网易有钱 MoneyWiz
数据存储位置 自建服务器 厂商云端 本地+云
多币种支持 ✅ 自动更新
账单OCR识别
部署成本 ¥0(开源) 年费¥198 年费$50
二次开发 ✅ (Go语言)

九、最佳实践建议

推荐组合方案

  • 数据采集:支付宝/微信账单CSV导出 + 现金消费手动录入
  • 安全加固:Nginx SSL + 双因素认证
  • 多端同步:Android/iOS使用网页版(PWA支持桌面快捷方式)
  • 报表分析:每月导出PDF报告进行家庭财务复盘

避坑指南

  1. ⚠️ 时区配置:务必设置TZ=Asia/Shanghai避免时间错误
  2. 🔑 初始密码:首次登录后立即修改默认管理员密码
  3. 💾 备份策略:数据库每日备份+异地存储
  4. 📱 移动端优化:浏览器"添加到主屏幕"实现类APP体验
Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐