開源免費好用的個人財務/記賬應用,Docker一鍵部署ezBookkeeping

本期來介紹一款 記賬/個人財務 應用工具:ezBookkeeping。適合個人使用,簡潔、強大且便攜,小微設備或雲服務器都能輕鬆運行。

筆者體驗下來PC和移動端用着都很舒服,項目非常棒,特做推薦!!!

應用介紹

ezBookkeeping 是一款輕量級、自託管的個人財務應用,擁有簡潔易用的界面和強大的記賬功能。它以簡潔易用和可移植性爲設計理念,易於部署、易於使用,並且佔用的系統資源極少,非常適合微服務器、NAS 設備,甚至 Raspberry Pi,也能在 PC、Mac 甚至雲服務器上流暢運行。

該應用程序完全跨平臺且設備友好:可以在移動設備、平板電腦和桌面設備上無縫使用它。由於支持 PWA(漸進式 Web 應用程序),甚至可以將其添加到移動主屏幕,並像原生應用程序一樣使用它。

功能特點

1. 開源 & 自託管

代碼開放,部署在自己的服務器,隱私和數據完全掌握在自己手中。

適合重視數據安全、拒絕雲端鎖定的用戶。

2. 輕量 & 高性能

針對低資源環境優化,樹莓派、NAS、舊筆記本都能流暢運行。

即使是多賬本、大量交易記錄,也能保持響應快速。

3. 簡單部署

官方提供 Docker 鏡像,幾行命令即可啓動。

支持 SQLite(零配置)、MySQL、PostgreSQL 等多種數據庫。

跨平臺支持 Windows、macOS、Linux,兼容 x86、amd64、ARM 架構。

4. 跨平臺 & PWA 支持

UI 適配桌面與移動端。

支持 PWA(Progressive Web App),可直接添加到手機主屏幕,像原生 App 一樣使用。

內置暗黑模式,夜間看賬也護眼。

5. AI 能力

支持 MCP(Model Context Protocol),可集成 AI 功能進行智能分析、自動分類或生成財務洞察。

6. 強大的記賬功能

兩級賬戶與分類體系,更精準管理收支。

可爲交易附加圖片(如收據、發票)。

支持位置記錄,自動在地圖上顯示消費地點。

定期交易(如房租、水電費)可自動生成。

高級搜索、過濾、數據可視化和分析工具,幫助你發現消費習慣。

7. 國際化支持

多語言、多貨幣支持。

自動更新匯率。

支持多時區顯示與自定義日期、數字、貨幣格式。

8. 安全保障

支持雙重認證(2FA)。

登錄嘗試次數限制,防暴力破解。

應用鎖(PIN 碼 / WebAuthn)防止未授權訪問。

9. 數據導入/導出

支持導入/導出多種格式:

CSV、OFX、QFX、QIF、IIF、Camt.053、MT940、GnuCash、Firefly III、Beancount 、隨手記、支付寶以及微信賬單 等多種格式等。方便從舊系統遷移,或與其他財務軟件對接。

如何部署

我們以威聯通NAS爲例,通過Docker Compose的方式進行部署。

ezBookkeeping 容器默認 UID:GID = 1000:1000,必須確保掛載到容器的宿主機目錄擁有讀寫權限,請提前賦權。如果你部署失敗,則極大概率會是這個原因。

chown -R 1000:1000 /share/Container/ezbookkeeping/data

chown -R 1000:1000 /share/Container/ezbookkeeping/storage

chown -R 1000:1000 /share/Container/ezbookkeeping/log

✅ SQLite 版本

可能對於大多數人來說,這個版本已經完全足夠。

部署代碼如下,威聯通用戶可直接抄作業,注意格式對齊,可用AI輔助:

services:

   ezbookkeeping:

      image: mayswind/ezbookkeeping:latest

      container_name: ezbookkeeping

      hostname: ezbookkeeping

      restart: unless-stopped

      ports:

         - "9527:8080" # 冒號左側端口可改

      environment:

         EBK_SERVER_DOMAIN: 192.168.200.132 # 或你 NAS 的域名

         EBK_ROOT_URL: http://192.168.200.132:9527 # 包括端口

         EBK_LOG_MODE: file

         EBK_SECURITY_SECRET_KEY: its_should_be_a_random_string # 改成隨機密鑰

         EBK_MCP_ENABLE_MCP: true # AI服務

      volumes:

         - /etc/localtime:/etc/localtime:ro # 同步宿主機時間

         - /share/Container/ezbookkeeping/data:/ezbookkeeping/data # SQLite 數據庫存放位置(NAS持久化目錄)

         - /share/Container/ezbookkeeping/storage:/ezbookkeeping/storage # 文件存儲目錄(附件、導出文件等)

         - /share/Container/ezbookkeeping/log:/ezbookkeeping/log # 日誌目錄

隨機密鑰可通過以下命令生成:

openssl rand -hex 32

✅ mysql 版本

若你已經部署mysql,或後續有共用數據庫的打算,以及清楚自己在做什麼,可以使用該版本。如果你對mysql並無瞭解,建議部署SQLite 版本。

這部分內容過長,黑盒不支持代碼注入,頭大請移步到我的博客看吧

注意

更多的配置,可以參考下圖,官方wiki十分詳細,包括郵件服務、通知配置、對象存儲、匯率等都可進行配置。

初始化及功能展示

選用SQLite對應代碼進行部署後,瀏覽器中輸入 NAS_IP:9527 即可訪問服務。

需要我們新建一個賬戶。

第二步的預設分類我們可以選擇啓用,然後提交即可。可能出現提交無法通過,但事實已經註冊成功,反回去登陸就行。不過爲了後續穩定,建議刪除全部配置文件重新創建。

界面展示如下,清晰明瞭,蠻符合我個人口味。大家覺得如何?

點擊頭像可進行各種設置。

密碼和設備管理,在這裏可生成MCP令牌供AI對話調用。

支持兩步驗證,資安相關的確實有必要整一個。

數據管理,支持手動導出數據。

應用設置中可以配置展示界面、添加應用鎖(六位PIN碼)、資金統計顯示以及數據同步(移動/PC分離)。

簡單使用

左側欄的「賬戶」,新增一個。可自行添加標籤,也可上傳圖片憑據。

開始記賬,可自行添加標籤,也可上傳圖片憑據。

可以看到添加成功。

主界面顯示如下圖所示,很絲滑。如果大家不滿足於基礎的交易分類、模版等,在左側的基礎數據手動添加/刪除即可。

MCP服務

來嘗試下MCP服務,生成令牌。這個配置建議保存,一次性顯示,否則就要重新創建一個。

配置填寫如下圖所示,url中間部份可填寫域名或IP,能正確訪問到你的服務即可。

可以看到已經添加成功了,但是查看API功能接口,感覺跟官方給的wiki介紹有差距。

實際指令測試卻並不能成功,檢查了網絡(全程局域網)、數據庫文件,最終未果~大家或許可以試試mysql會不會有同樣問題。

關於MCP也有相關的功能介紹界面,感興趣的朋友可以琢磨。

最後

我認爲這個項目非常優秀,PC端和移動端的使用很滿意。

項目較新,大家有啥建議可以到項目地址提交issues~

感謝觀看,本文完。

更多遊戲資訊請關註:電玩幫遊戲資訊專區

電玩幫圖文攻略 www.vgover.com