个人财务管理系统BudgetBee,Docker一键部署,NAS极简配置,多账户记账工具
作者
小编
发布时间

项目介绍
BudgetBee 是一款功能强大的个人财务管理系统,专为那些想要掌控自己财务状况的用户设计。它采用现代化的 Docker 容器技术部署,基于 PHP 后端和现代前端框架构建,提供了一个开箱即用的财务管理解决方案。
通过 BudgetBee,你可以轻松记录每一笔收支、创建多个账户、管理不同的货币、设置分类预算,甚至支持从 Excel 和 JSON 文件导入历史账单数据。系统还支持多用户管理,非常适合家庭或小团队使用。无论你是想要精细化管理个人开支,还是需要一个简洁高效的家庭记账工具,BudgetBee 都能满足你的需求。
项目地址:点我跳转
友情提示: 若要在外网访问你的 BudgetBee 应用,建议配置内网穿透服务。推荐使用 帕斯内网穿透,先完成账号注册。具体操作步骤可参考 全平台内网穿透上手指南,轻松实现随时随地访问你的财务数据。
部署安装
准备工作
打开你的 NAS 设备(飞牛 NAS、群晖或其他支持 Docker 的 NAS)或本地 Docker 环境,我们将通过 Docker Compose 一键部署 BudgetBee。
配置文件部署
复制以下 Docker Compose 配置文件:
1version: '3.8'2services:3 nginx:4 image: ghcr.io/budgetbee/budgetbee/proxy:latest5 command: nginx -g "daemon off;"6 ports:7 - "${APP_PORT}:80"8 depends_on:9 - webserver10 - web11 restart: unless-stopped12 networks:13 - skynet14 webserver:15 image: ghcr.io/budgetbee/budgetbee/api:latest16 working_dir: /var/www/html17 command: sh entrypoint.sh18 environment:19 DB_HOST: db20 DB_DATABASE: ${DB_DATABASE}21 DB_USERNAME: ${DB_USERNAME}22 DB_PASSWORD: ${DB_PASSWORD}23 depends_on:24 db:25 condition: service_healthy26 restart: unless-stopped27 networks:28 - skynet29 web:30 image: ghcr.io/budgetbee/budgetbee/web:latest31 restart: unless-stopped32 networks:33 - skynet34 db:35 image: mysql:8.2.036 command: --default-authentication-plugin=mysql_native_password37 environment:38 MYSQL_ROOT_PASSWORD: ${DB_ROOT_PASSWORD}39 MYSQL_DATABASE: ${DB_DATABASE}40 MYSQL_USER: ${DB_USERNAME}41 MYSQL_PASSWORD: ${DB_PASSWORD}42 healthcheck:43 test: ["CMD", "/usr/bin/mysql", "--user=${DB_USERNAME}", "--password=${DB_PASSWORD}", "--execute", "SELECT SCHEMA_NAME FROM INFORMATION_SCHEMA.SCHEMATA WHERE SCHEMA_NAME = '${DB_DATABASE};'"]44 timeout: 20s45 retries: 10046 restart: unless-stopped47 volumes:48 - db_data:/var/lib/mysql49 networks:50 - skynet51networks:52 skynet:53volumes:54 db_data:
环境变量配置
将上述配置文件保存后,需要配置以下环境变量。在 NAS 的 Portainer 或 Docker 管理面板中进行设置:
必须设置的环境变量:
APP_PORT: 应用访问端口(默认值:80,如果与其他服务冲突可改为 8080、3000 等) DB_DATABASE: 数据库名称(默认值:budgetbee) DB_USERNAME: 数据库用户名(默认值:budgetbee) DB_PASSWORD: 数据库密码(请设置强密码) DB_ROOT_PASSWORD: MySQL root 密码(请设置强密码)
环境变量说明:
APP_PORT 是容器对外暴露的端口,如果你的 NAS 上 80 端口已被占用,可以改为其他端口(如 8080)。容器内部端口保持不变。 数据库相关的密码请务必设置为复杂密码,确保安全性。 其他配置项保持默认即可。
启动应用
在 NAS 的 Docker 管理面板中:
将上述配置文件粘贴到 docker-compose 编辑区域 填入上述环境变量的具体值 点击启动或部署
等待所有容器启动完成(通常需要 30-60 秒)。
创建用户账户
容器全部启动后,需要创建你的登录账户。在本地机器或 NAS 终端执行以下命令:
1docker exec budgetbee-webserver-1 php scripts/create_user.php 你的名字 你的邮箱 你的密码
例如:
1docker exec budgetbee-webserver-1 php scripts/create_user.php "张三" "zhangsan@example.com" "MySecurePassword123"
访问应用
部署完成后,打开浏览器访问:
1http://你的NAS_IP:APP_PORT
例如,如果你的 NAS IP 是 192.168.1.100,APP_PORT 设置为 8080,则访问地址为:
1http://192.168.1.100:8080
使用刚才创建的账户邮箱和密码登录,即可开始使用 BudgetBee 管理你的财务!
总结
通过以上步骤,你已经成功部署了 BudgetBee 财务管理系统。现在你可以:
📊 记录每一笔收支交易 💰 管理多个账户和货币 📂 按分类设置预算和跟踪 📥 从 Excel/JSON 导入历史账单 👥 创建多个用户账户
如需升级到最新版本,只需在 NAS 终端执行 `docker-compose up -d --build` 即可。
本篇教程结束,祝你使用愉快!