輕量又安全!一款開源自托管的個人記賬工具!
大家好,我是 Java陳序員。
你是否會有這樣的困擾:手里存款越來越多,反而成了甜蜜的負擔?
看著銀行卡里不斷上漲的數字,卻總說不清每筆錢的來龍去脈;想給資金做個分類管理,卻被各種理財 APP 的復雜界面勸退;更擔心把財務數據存在第三方平臺,哪天就成了“透明人”~
今天,給大家介紹一款開源自托管的個人記賬工具,輕量又安全!
關注微信公眾號:【Java陳序員】,獲取開源項目分享、AI副業分享、超200本經典計算機電子書籍等。
項目介紹
ezBookkeeping —— 一款輕量、自托管的個人記賬應用,基于 Go + Vue 構建,擁有用戶友好的界面和強大的記賬功能。
ezBookkeeping 部署簡單,借助 Docker 只需一行命令即可啟動。同時對系統資源占用低、可擴展性高,既可運行在樹莓派等輕量設備上,也能擴展到 NAS、MicroServer 甚至集群環境。
功能特色:
- 強大的記賬功能:支持二級賬戶與分類結構,支持為交易添加圖片附件、交易地理位置,支持周期性交易,提供高級篩選、搜索功能
- 開源自托管:專為隱私與數據自主而設計,所有財務數據存儲在個人設備,無需依賴第三方平臺,隱私安全完全由自己掌控
- 極簡部署與跨平臺:主打輕量,在資源有限的設備上也運行流暢,支持 Docker 部署,支持跨平臺使用和多種數據庫
- 友好的用戶界面:UI 同時支持 Web 端和移動端,支持多語言、多幣種、深色模式
- 數據分析與可視化:提供收支趨勢圖、分類占比餅圖等多種可視化圖表,支持按賬戶、分類、時間范圍等靈活篩選統計維度,支持 CSV、TSV 等格式導入導出
快速上手
二進制包部署
1、下載并解壓安裝包
下載地址:https://github.com/mayswind/ezbookkeeping/releases
2、執行如下命令啟動服務
./ezbookkeeping server run
執行完該命令后,ezBookkeeping 將會以默認的配置啟動,并監聽端口 8080.
如果想修改配置,可以使用
--conf-path參數指定自定義配置文件路徑或直接修改conf/config.ini文件。
3、運行成功后,瀏覽器訪問
http://{ip/域名}:8080
Docker 部署
- Docker 命令部署
1、拉取鏡像
docker pull mayswind/ezbookkeeping
2、創建掛載目錄并修改權限
## 數據庫存儲掛載目錄
mkdir -p /data/software/ezbookkeeping/data
chown 1000:1000 /data/software/ezbookkeeping/data
## 對象存儲掛載目錄
mkdir -p /data/software/ezbookkeeping/storage
chown 1000:1000 /data/software/ezbookkeeping/storage
3、運行容器
docker run -d -p 8080:8080 \
--name ezbookkeeping \
-v /var/lib/ezbookkeeping/data:/ezbookkeeping/data \
-v /var/lib/ezbookkeeping/storage:/ezbookkeeping/storage \
mayswind/ezbookkeeping
4、容器運行成功后,瀏覽器訪問
http://{ip/域名}:8080
- Docker Compose 部署
1、創建 docker-compose.yaml 文件并寫入如下內容:
version: "2"
services:
ezbookkeeping:
image: mayswind/ezbookkeeping
container_name: ezbookkeeping
hostname: "ezbookkeeping"
ports:
- "8080:8080"
environment:
- "EBK_SERVER_DOMAIN=ezbookkeeping.yourdomain"
- "EBK_SERVER_ENABLE_GZIP=true"
- "EBK_DATABASE_TYPE=mysql"
- "EBK_DATABASE_HOST=mysql:3306"
- "EBK_DATABASE_NAME=ezbookkeeping"
- "EBK_DATABASE_USER=ezbookkeeping"
- "EBK_DATABASE_PASSWD=ezbookkeeping"
- "EBK_LOG_MODE=file"
- "EBK_SECURITY_SECRET_KEY=its_should_be_a_random_string"
volumes:
- "/etc/localtime:/etc/localtime:ro"
- "/var/lib/ezbookkeeping/storage:/ezbookkeeping/storage" # 請確保 UID:GID 是 1000:1000
- "/var/log/ezbookkeeping:/ezbookkeeping/log" # 請確保 UID:GID 是 1000:1000
使用 MySQL 作為數據庫,數據庫的連接信息需要進行修改,文件掛載目錄記得創建和授權。
2、一鍵啟動
docker compose up -d
更多的安裝配置信息,可參考官方文檔:
http://ezbookkeeping.mayswind.net/zh_Hans/installation
初始化配置
1、首次訪問 ezBookkeeping 需要注冊用戶信息

2、點擊創建新賬號,填入用戶基本信息并設置默認幣種

3、使用預設交易分類,后續可直接使用,無需再手動創建

4、最后提交保存并登錄到首頁,即可開始使用
功能體驗
PC 端
- 總覽

- 交易詳情


- 統計分析

- 賬戶

- 交易分類

- 用戶設置

移動端

可以說,無論是日常記賬、消費分析,還是多幣種管理,ezBookkeeping 都能勝任工作。更重要的是,所有財務數據存儲在個人設備,無需依賴第三方平臺,隱私安全完全由自己掌控。快去部署體驗吧~
項目地址:https://github.com/mayswind/ezbookkeeping
最后
推薦的開源項目已經收錄到 GitHub 項目,歡迎 Star:
https://github.com/chenyl8848/great-open-source-project
或者訪問網站,進行在線瀏覽:
https://chencoding.top:8090/#/

我創建了一個開源項目交流群,方便大家在群里交流、討論開源項目。
但是任何人在群里打任何廣告,都會被 T 掉。
如果你對這個交流群感興趣或者在使用開源項目中遇到問題,可以通過如下方式進群:
關注微信公眾號:【Java陳序員】,回復【開源項目交流群】進群,或者通過公眾號下方的菜單添加個人微信,并備注【開源項目交流群】,通過后拉你進群。
大家的點贊、收藏和評論都是對作者的支持,如文章對你有幫助還請點贊轉發支持下,謝謝!
ezBookkeeping —— 一款輕量、自托管的個人記賬應用,基于 Go + Vue 構建,擁有用戶友好的界面和強大的記賬功能。
浙公網安備 33010602011771號