Firefly III 介绍
Firefly III 是开源免费、无广告的个人财务的(自托管)它可以帮助您跟踪您的支出和收入,统计少花钱多存钱。Firefly III 支持使用预算、类别和标签。使用一堆外部工具,支持可以导入数据。它还提供许多简洁的财务报告。
Firefly III 应该可以深入了解并控制自己的财务状况。钱应该是有用的,你应该能够看到它的去向,感受你的开支
演示地址:https://demo.firefly-iii.org/login

Firefly III 有多种运行方式
有一个演示站点,其中已经存在示例财务管理。
可以将它安装在您的服务器上。 可以使用 Docker 运行它。 可以使用 Softaculous 安装它。 可以使用 AMPPS 安装它。 可以将它安装在 Cloudron 上。 可以将它安装在 Lando 上。 可以将它安装在 Yunohost 上

环境准备
Docker 安装 MariaDB 安装
首先打开套件中心

选择安装位置
设置密码
确认安装
服务正常

勾选完成本地打开插件,勾选TCP/IP连接
本地连接nas服务器 (可以使用xshell
, crt
等连接)

如果没有开启,可以后台开启一下

创建用户名以及数据库
CREATE DATABASE firefly ; #firefly为库名 CREATE USER 'firefly'@'%' IDENTIFIED BY 'aCna2D@1CZ'; #授权firefly密码为aCna2D@1CZ grant all privileges on firefly.* to 'firefly'@'%' identified by "aCna2D@1CZ"; #授权firefly库
目前我们的MariaDB连接信息如下
用户名: root 密码: 后台自己设置的 端口: 3306 地址: nas_ip
安装完成后,我们就可以下载Firefly III镜像
Docker安装Firefly III
搜索镜像firefly
[ ] fireflyiii/core:beta. 此标签包含 beta 版本。 [ ] fireflyiii/core:alpha. 此标签包含 alpha 版本。 [ ] fireflyiii/core:develop. 始终是最新的开发图像。可能不稳定。

选择镜像启动

此处默认


手动指定一个端口号
映射持久化目录
创建持久化目录firefly文件夹
配置
文件夹 | 装载路径 | 说明 |
---|---|---|
docker/firefly/export | /var/www/html/storage/export | 存放导出文件 |
docker/firefly/upload | /var/www/html/storage/upload | 存放上传文件 |
点击完成后,我们不要启动容器。
这时候编辑一下环境变量

环境变量如下
变量名 | Value |
---|---|
APP_KEY | 必须是 32 位 |
DB_HOST | 数据库地址 |
DB_PORT | 数据库端口 |
DB_CONNECTION | 数据库类型 |
DB_DATABASE | 数据库库名 |
DB_USERNAME | 数据库用户 |
DB_PASSWORD | 数据库密码 |
按照对应的修改即可,APP_KEY为随机32位,可以随机生成
可以直接复制我的
AgXj2E9M0PGhRqhzoMtycqDRkNwIRHjO

启动后等待一会就可以访问系统了
我们需要给自己注册一个管理员用户
密码需要16位
设置货币以及中文

此时已经配置完成
FRP 配置
配置文件如下
[firefly]
type = tcp
local_ip = 192.168.31.198
local_port = 27382
remote_port = 2101
设置Nginx反向代理
location ^~ / { proxy_pass http://127.0.0.1:21081; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header REMOTE-HOST $remote_addr; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection “upgrade”; add_header X-Cache $upstream_cache_status; proxy_set_header X-Forwarded-Proto $scheme; } #PROXY-END/
访问测试
如果使用域名还需要设置APP_URL
变量以及TRUSTED_PROXIES
登陆测试
官方还支持k8s部署,参考https://docs.firefly-iii.org/firefly-iii/installation/docker/#docker-and-reverse-proxies