个人记账本系统 Cashbook NAS 极简部署教程,支持多用户多账本数据管理。帕斯内网穿透远程随时记账!
作者
小编
发布时间

项目介绍
Cashbook 是一个开箱即用的个人记账本系统,专注于提供简单、易用、自主可控的数据记录体验。该项目基于现代化的技术栈构建,在数据记录上追求简单易用,在统计分析上力求清晰美观、简洁有效。
Cashbook 支持前后台分离架构,提供独立的后台管理系统方便对整个系统进行管理。系统支持多用户模式,用户之间数据完全隔离,同时支持多账本模式,不同账本之间数据独立管理。项目还支持支付宝、微信、京东金融等主流平台的CSV账单文件导入,并能自动转换消费类型。
系统提供直观的消费日历看板、月度账单分析,以及美观的数据分析图表,包括支出类型统计饼图、支付方式统计饼图、每日流水统计曲线图等多种可视化图表。支持上传小票图片、账本数据快速迁移、自助平账功能,并且完美适配移动端使用。
项目地址: 点我跳转
部署安装
如需在外也打开项目需要配置内网穿透使用,点击前往 帕斯内网穿透,先注册好账号备用。
重要提示:如果需要部署到公网,请务必修改各类环境变量(如后台账号密码、数据库密码等)!
复制下列的配置文件
1services:2 main:3 container_name: cashbook44 depends_on:5 - 'db'6 image: dingdangdog/cashbook:latest7 restart: always8 volumes:9 - ./data:/app/data10 environment:11 DATABASE_URL: 'postgresql://postgres:postgres@cashbook_db:5432/cashbook?schema=public'12 NUXT_AUTH_SECRET: 'auth_secret_123'13 NUXT_ADMIN_USERNAME: 'admin'14 NUXT_ADMIN_PASSWORD: 'fb35e9343a1c095ce1c1d1eb6973dc570953159441c3ee315ecfefb6ed05f4cc'15 ports:16 - 9090:909017 db:18 container_name: cashbook_db19 image: postgres20 restart: always21 shm_size: 128mb22 volumes:23 - ./db:/var/lib/postgresql/data24 environment:25 POSTGRES_PASSWORD: postgres26 POSTGRES_DB: cashbook27 ports:28 - 5432:5432
打开飞牛 NAS 或其他的 NAS 设备

项目名称可以随便填,点击创建 docker-compose.yml

点击 Compose -> 新建项目
这里需要改成你需要的账号和密码,其他的保持不变。特别注意:
- NUXT_ADMIN_USERNAME: 后台管理员用户名,请自行修改
- NUXT_ADMIN_PASSWORD: 后台管理员密码(已加密),如需修改请前往 https://cashbook.oldmoon.top/admin/GetPassword 生成新密码
- POSTGRES_PASSWORD: 数据库密码,请自行修改
- NUXT_AUTH_SECRET: 前台登录加密密钥,请自行修改(不能是纯数字)
如果提示端口被占用可以修改下面的字段,但是需要保持格式正确。
创建成功后可以访问 ip:9090
到这里就可以正常显示项目了
穿透公网
打开帕斯内网穿透控制台,点击隧道管理-隧道列表

点击创建新隧道
隧道节点可以随便选,一般选个负载低的就可以

接下来填写信息,隧道名称可以随便填写
本地 IP 默认就可以
传输协议可以选择 TCP 也可以选择 HTTP/HTTPS
HTTP 就是域名的形式,教程以使用 TCP 为演示
本项目中如果没有修改端口的话默认是 9090 端口,这里本地 IP 就填 9090
远程端口可以留空也可以自定义。下图仅做参考,请按照实际项目端口添加。

填写完毕点击确定
点击刚才创建好的隧道,点击获取配置文件

回到飞牛 NAS,点击应用中心下载 frpc 客户端

打开后粘贴刚才复制的配置文件,点击确定即可
复制帕斯内网穿透控制台的访问 IP 和端口
可以看到已经正常穿透成功了
本篇教程结束