我摊牌了,如何管理十亿资产!在NAS上搭建一个开源的理财记账工具Firefly III
想必很多小伙伴都看过《西虹市首富》这部电影 ,其实王多鱼的十亿资产其实完全没有必要请那么多人来管理(嚯嚯),只要请我一个就够了!原因很简单,我会给他搞一个非常牛批的理财管理工具,所有的收入支出一目了然,并且还有详细的流水清单,我甚至可以一秒钟给他财务报表也没有问题!

大家好,我是Stark-C,受正在观看这篇文章的各位“王多鱼”委托,教你们如何在自己的NAS上搭建一个开源的理财记账工具『Firefly III』,非常适合个人或者公司使用,用它来管理你们的十亿资产。
关于Firefly III
简介:
Firefly III(中文名字“萤火虫”)是一款开源的记账软件,完全没有广告,可以自主搭建个人的财务管理服务,帮助用户记录和追踪收入与开销。同时,它还支持使用预算、类别和标签,支持可以导入数据,提供许多简洁的财务报告等,最主要的是,它还提供开放的接口,支持跨平台使用和同步。所以说不管是对于个人或者公司来说,都比较适用。

🔺在部署Firefly III之前,你还可以直接通过官方给出的DEMO演示地址先行体验:https://demo.firefly-iii.org/login
镜像:

🔺小伙伴们在使用NAS上的Docker拉取镜像的时候需要选择“fireflyiii/core”的镜像,有一个名字叫做“jc5x/firefly-iii”的镜像虽说是官方的,但是在前两年停更了。
推荐的NAS:
我个人还是比较钟意更专业的传统NAS。就目前来说,传统的“御三家”NAS群晖的价格一直坚挺;威联通家的TS-464C亦是好价,现在已经不到2000,虽说不支持内存扩展,但是个人使用不玩虚拟机也是随便折腾;华硕家的AS6604T虽说是上一代老款,但是2000出头的价格也值得关注,唯一不便的就是目前它的市场占用率不多,所以相关教程较少,很多都需要自己摸索。
Firefly III的安装和部署
👉准备工作
对于Firefly III这么私密的Docker容器它还是需要数据库来支持的,所以我们先要在自己NAS中的数据库中新建一个可供使用的账户。连接我们本地数据库之后除了让该容器更安全,还可以方便我们更快捷的备份和恢复数据,共享数据。
关于NAS中部署数据库我之前有相关详细教程(群晖威联通华硕NAS通用):

🔺这里假设你那边的数据库没有问题。通过 phpMyAdmin 打开 MariaDB 10数据库之后,选择“账户--新增用户账户”。

🔺然后按照上图提示,新建一个账户:
用户名:fireflyiii
主机名:任意主机(%)
密码:随意设置
勾选下面的“创建与用户名同名的数据库并授予所有权限,最后记得点击页面下方的“执行”按钮。

🔺然后在账户列表看到“fireflyiii”说明创建成功。

🔺同时,我们还需要通过NAS的文件管理器,在 docker 文件夹中(威联通默认为Container文件夹),创建一个新文件夹【 fireflyiii】,然后在 fireflyiii文件夹中再分别新建两个子文件夹【upload】 和【export】,其中upload文件夹用于存放上传文件,export文件夹用于存放导出文件。
👉正式安装和部署
为了照顾“御三家”NAS用户,今天使用的安装方式为SSH终端部署,演示的NAS为威联通。至于SSH工具请自行解决,Putty,XShell,FinalShell等都可以,我个人使用的是FinalShell。

🔺使用SSH连接工具连接到NAS之后先改用管理员模式登录,输入命令“ sudo -i ”回车,提示输入密码,密码就是我们NAS的登录密码,输入的时候不会有显示,输入完成后直接点回车即可。


🔺然后还需要在出现上图界面的时候输入“Q”和“Y”(群晖和华硕NAS没有这步操作)。

🔺接着我们就使用Docker run命令一次搞定:
sudo docker run -d
--name fireflyiii
-e APP_KEY=32位随机码
-e DB_HOST=数据库地址
-e DB_CONNECTION=数据库类型
-e DB_PORT=数据库端口
-e DB_DATABASE=数据库库名称
-e DB_USERNAME=数据库用户
-e DB_PASSWORD=数据库密码
-p 8080:8080
-v /home/docker/fireflyiii/upload:/var/www/html/storage/upload
-v /home/docker/fireflyiii/export:/var/www/html/storage/export
--restart always fireflyiii/core:latest
如果不出意外,这里一定会发生意外。因为张大妈的编辑器会吞掉每行命令后面的“空格和反斜杠”,所以这里在奉上一行命令:
sudo docker run -d --name fireflyiii -e APP_KEY=32位随机码 -e DB_HOST=数据库地址 -e DB_CONNECTION=数据库类型 -e DB_PORT=数据库端口 -e DB_DATABASE=数据库库名 -e DB_USERNAME=数据库用户 -e DB_PASSWORD=数据库密码 -p 端口:8080 -v /ubuntu/docker/fireflyiii/upload:/var/www/html/storage/upload -v /home/docker/fireflyiii/export:/var/www/html/storage/export --restart always fireflyiii/core:latest
以上命令中所有中文都需要修改成你自己那边对应的信息。下面对以上命令做个一个简单的注释:
-e APP_KEY=32位随机码:32位随机码没有限制,你直接度娘找一个在线随机密码生成器生成即可
-e DB_HOST=数据库地址:数据库地址地址就是你NAS的局域网IP地址
-e DB_CONNECTION=数据库类型:直接填写“mysql”即可
-e DB_PORT=数据库端口:我们使用的是MariaDB 10数据库,它默认端口是“3307”,所以这里需要填“3307”
-e DB_DATABASE=数据库库名称:前面创建的用户名与数据库同名,都为“fireflyiii”
-e DB_USERNAME=数据库用户:前面创建的用户名与数据库同名,都为“fireflyiii”
-p 8080:8080:端口映射,冒号前面改成本地没使用的端口即可
-v /home/docker/fireflyiii/upload:/var/www/html/storage/upload :冒号前面对应我们前面新建“upload”文件夹的实际路径
-v /home/docker/fireflyiii/export:/var/www/html/storage/export:冒号前面对应我们前面新建“export”文件夹的实际路径
命令看似复杂,其实只需要对着修改相关参数即可。新手朋友可以先将命令复制到文本文档,对着我给出的说明以及上图图示一点点修改,基本不会出现问题的。

🔺如果没有问题在NAS的Docker容器列表中就能看到fireflyiii容器已经正在运行了,说明部署成功。
Firefly III的使用体验
打开方式和其它Docker容器没有区别,依然是直接在浏览器中输入 【http:// NAS的局域网IP:端口号】 就能看到登录界面了。

🔺首次打开需要注册,它默认这个界面还是英文,我这里显示中文是因为浏览器自动翻译了。

🔺邮箱随意填写,国内的QQ邮箱就可以。密码不能少于16位数,和前面一样,直接使用在线随机密码生成器就可以了(不要担心你记不住,一般来说浏览器会默认帮你记下来的)。

🔺登录成功后首先看到的就是欢迎界面。然后在这里设置你的账户信息以及设置中文显示:
Bank name:你的账户银行名称,比如我随意填了个“中国银行”
Balance:总余额,默认是欧元,点前面的三角下箭头,找到 chinese yuan(人民币),后面填十个亿
Savings balance:储蓄卡余额,我这里填的999999999是因为我早上买了个卤蛋用了一块钱
language :不用问,直接选项中下拉到底,选择 Chinese Simplified

🔺最后就来到了真正的中文主界面。

🔺随便试用了一下感觉还不错,操作逻辑也是非常容易上手。比如说我最近心情不错,准备给老婆买100只79元的眉笔用来练习画画,就直接可以创建一个7900的【预算】出去。

🔺同时老婆最近有些败家,我就给她在【存钱罐】这里定了一个月之类存79元买眉笔的大目标(希望她能做到~~)
写在最后
总之Firefly III这个项目我也随便玩了几天,它的功能还是比较多的,甚至还有报表等一些财务上才会用到的专业功能。同时按照官方说法,它还有手机端对应的APP程序【Firefly Personal Finance】以及【Photuris III】,不过仅限于安卓手机,有兴趣的小伙伴可以搭建一个试试吧!
好了,以上就是今天给大家分享的内容,我是爱分享的Stark-C,如果今天的内容对你有帮助请记得收藏,顺便点点关注,我会经常给大家分享各类有意思的软件和免费干货,咱们下期再见!谢谢大家~

Enjoy_Life
fireflyiii | (init-webserver-config): Processing /etc/nginx/nginx.conf.template → /etc/nginx/nginx.conf...
fireflyiii | /usr/local/bin/docker-php-serversideup-entrypoint: 56: /etc/entrypoint.d/10-init-webserver-config.sh: cannot create /etc/nginx/nginx.conf: Permission denied
校验提示文案
浮生行简
校验提示文案
熊猫不是猫QAQ
校验提示文案
aboutme
校验提示文案
徐徐濡笙
校验提示文案
大屁股白柯基
另外,移动端安卓现在可以用waterfly,用令牌可以连上,挺好用的
校验提示文案
烘茄酱
校验提示文案
笑口常开99
校验提示文案
此花未落
校验提示文案
Geng_Le
校验提示文案
磐涅妙心
校验提示文案
海绵菌
校验提示文案
言言的言
校验提示文案
部川内酷
校验提示文案
长江啊黄河
校验提示文案
山贼95270
校验提示文案
行走的梨花
校验提示文案
部门打杂
校验提示文案
聆云2021
校验提示文案
林溪风
校验提示文案
Enjoy_Life
fireflyiii | (init-webserver-config): Processing /etc/nginx/nginx.conf.template → /etc/nginx/nginx.conf...
fireflyiii | /usr/local/bin/docker-php-serversideup-entrypoint: 56: /etc/entrypoint.d/10-init-webserver-config.sh: cannot create /etc/nginx/nginx.conf: Permission denied
校验提示文案
ChinaToby
难道是通过数据库操作?
校验提示文案
徐徐濡笙
校验提示文案
zhouwei_54
校验提示文案
栤嚸
校验提示文案
棠溪2022
校验提示文案
木力曾
校验提示文案
alan-yeh
校验提示文案
大屁股白柯基
另外,移动端安卓现在可以用waterfly,用令牌可以连上,挺好用的
校验提示文案
Thuzh14
校验提示文案
买啥手说了算
校验提示文案
孤独的狼688
校验提示文案
刀风之影
校验提示文案
约翰胖雷尔
校验提示文案
寇一个柱子
校验提示文案
我就是醋精
校验提示文案
啥都没有
校验提示文案
春华秋实2023
校验提示文案
含笑三不沾
校验提示文案
麦子张8288
校验提示文案