找回密码
 立即注册
首页 业界区 安全 轻量又安全!一款开源自托管的个人记账工具! ...

轻量又安全!一款开源自托管的个人记账工具!

班嘉淑 7 小时前
大家好,我是 Java陈序员。
你是否会有这样的困扰:手里存款越来越多,反而成了甜蜜的负担?
看着银行卡里不断上涨的数字,却总说不清每笔钱的来龙去脉;想给资金做个分类管理,却被各种理财 APP 的复杂界面劝退;更担心把财务数据存在第三方平台,哪天就成了“透明人”~
今天,给大家介绍一款开源自托管的个人记账工具,轻量又安全!
关注微信公众号:【Java陈序员】,获取开源项目分享、AI副业分享、超200本经典计算机电子书籍等。
项目介绍

ezBookkeeping —— 一款轻量、自托管的个人记账应用,基于 Go + Vue 构建,拥有用户友好的界面和强大的记账功能。
ezBookkeeping 部署简单,借助 Docker 只需一行命令即可启动。同时对系统资源占用低、可扩展性高,既可运行在树莓派等轻量设备上,也能扩展到 NAS、MicroServer 甚至集群环境。
功能特色

  • 强大的记账功能:支持二级账户与分类结构,支持为交易添加图片附件、交易地理位置,支持周期性交易,提供高级筛选、搜索功能
  • 开源自托管:专为隐私与数据自主而设计,所有财务数据存储在个人设备,无需依赖第三方平台,隐私安全完全由自己掌控
  • 极简部署与跨平台:主打轻量,在资源有限的设备上也运行流畅,支持 Docker 部署,支持跨平台使用和多种数据库
  • 友好的用户界面:UI 同时支持 Web 端和移动端,支持多语言、多币种、深色模式
  • 数据分析与可视化:提供收支趋势图、分类占比饼图等多种可视化图表,支持按账户、分类、时间范围等灵活筛选统计维度,支持 CSV、TSV 等格式导入导出
快速上手

二进制包部署

1、下载并解压安装包
  1. 下载地址:https://github.com/mayswind/ezbookkeeping/releases
复制代码
2、执行如下命令启动服务
  1. ./ezbookkeeping server run
复制代码
执行完该命令后,ezBookkeeping  将会以默认的配置启动,并监听端口 8080.
如果想修改配置,可以使用 --conf-path 参数指定自定义配置文件路径或直接修改 conf/config.ini 文件。
3、运行成功后,浏览器访问
  1. http://{ip/域名}:8080
复制代码
Docker 部署


  • Docker 命令部署
1、拉取镜像
  1. docker pull mayswind/ezbookkeeping
复制代码
2、创建挂载目录并修改权限
  1. ## 数据库存储挂载目录
  2. mkdir -p /data/software/ezbookkeeping/data
  3. chown 1000:1000 /data/software/ezbookkeeping/data
  4. ## 对象存储挂载目录
  5. mkdir -p /data/software/ezbookkeeping/storage
  6. chown 1000:1000 /data/software/ezbookkeeping/storage
复制代码
3、运行容器
  1. docker run -d -p 8080:8080 \
  2.     --name ezbookkeeping \
  3.     -v /var/lib/ezbookkeeping/data:/ezbookkeeping/data \
  4.     -v /var/lib/ezbookkeeping/storage:/ezbookkeeping/storage \
  5.     mayswind/ezbookkeeping
复制代码
4、容器运行成功后,浏览器访问
  1. http://{ip/域名}:8080
复制代码

  • Docker Compose 部署
1、创建 docker-compose.yaml 文件并写入如下内容:
  1. version: "2"
  2. services:
  3.   ezbookkeeping:
  4.     image: mayswind/ezbookkeeping
  5.     container_name: ezbookkeeping
  6.     hostname: "ezbookkeeping"
  7.     ports:
  8.       - "8080:8080"
  9.     environment:
  10.       - "EBK_SERVER_DOMAIN=ezbookkeeping.yourdomain"
  11.       - "EBK_SERVER_ENABLE_GZIP=true"
  12.       - "EBK_DATABASE_TYPE=mysql"
  13.       - "EBK_DATABASE_HOST=mysql:3306"
  14.       - "EBK_DATABASE_NAME=ezbookkeeping"
  15.       - "EBK_DATABASE_USER=ezbookkeeping"
  16.       - "EBK_DATABASE_PASSWD=ezbookkeeping"
  17.       - "EBK_LOG_MODE=file"
  18.       - "EBK_SECURITY_SECRET_KEY=its_should_be_a_random_string"
  19.     volumes:
  20.       - "/etc/localtime:/etc/localtime:ro"
  21.       - "/var/lib/ezbookkeeping/storage:/ezbookkeeping/storage" # 请确保 UID:GID 是 1000:1000
  22.       - "/var/log/ezbookkeeping:/ezbookkeeping/log" # 请确保 UID:GID 是 1000:1000
复制代码
使用 MySQL 作为数据库,数据库的连接信息需要进行修改,文件挂载目录记得创建和授权。
2、一键启动
  1. docker compose up -d
复制代码
更多的安装配置信息,可参考官方文档:
  1. http://ezbookkeeping.mayswind.net/zh_Hans/installation
复制代码
初始化配置

1、首次访问 ezBookkeeping 需要注册用户信息
1.png

2、点击创建新账号,填入用户基本信息并设置默认币种
2.png

3、使用预设交易分类,后续可直接使用,无需再手动创建
3.png

4、最后提交保存并登录到首页,即可开始使用
功能体验

PC 端


  • 总览
4.png


  • 交易详情
5.png

6.png


  • 统计分析
7.png


  • 账户
8.png


  • 交易分类
9.png


  • 用户设置
10.png

移动端

11.png

可以说,无论是日常记账、消费分析,还是多币种管理,ezBookkeeping 都能胜任工作。更重要的是,所有财务数据存储在个人设备,无需依赖第三方平台,隐私安全完全由自己掌控。快去部署体验吧~
  1. 项目地址:https://github.com/mayswind/ezbookkeeping
复制代码
最后

推荐的开源项目已经收录到 GitHub 项目,欢迎 Star:
  1. https://github.com/chenyl8848/great-open-source-project
复制代码
或者访问网站,进行在线浏览:
  1. https://chencoding.top:8090/#/
复制代码
12.png

我创建了一个开源项目交流群,方便大家在群里交流、讨论开源项目
但是任何人在群里打任何广告,都会被 T 掉
如果你对这个交流群感兴趣或者在使用开源项目中遇到问题,可以通过如下方式进群
关注微信公众号:【Java陈序员】,回复【开源项目交流群】进群,或者通过公众号下方的菜单添加个人微信,并备注【开源项目交流群】,通过后拉你进群
大家的点赞、收藏和评论都是对作者的支持,如文章对你有帮助还请点赞转发支持下,谢谢!

来源:豆瓜网用户自行投稿发布,如果侵权,请联系站长删除

相关推荐

您需要登录后才可以回帖 登录 | 立即注册