在 Ubuntu 20.04 上设置 Firefly III 个人财务管理器 | 18.04 |
您是否一直想对自己的财务状况有一个清晰的洞察和控制?您现在有机会跟踪您的财务状况,并密切关注您的资金,而无需将您的财务记录上传到云端。 Firefly III 的工作原理是,如果你知道你的钱去了哪里,你就可以阻止它流向那里。现在您已经了解 Firefly III 是什么了。
明确地说,“Firefly III”是您个人财务的(自托管)管理器。它可以帮助您跟踪您的支出和收入,这样您就可以减少支出,增加储蓄。 Firefly III 支持预算、类别和标签的使用。它可以从外部来源导入数据,并且有许多简洁的财务报告可用。
Firefly III个人理财管家的功能
- 创建定期交易来管理您的资金
- 基于规则的事务处理,能够创建您自己的规则
- 从外部系统导入数据
- 复式记账系统
- 使用存钱罐为目标存钱
- 查看收入和支出报告
- 2 因素身份验证提供额外的安全性?
- 支持您想要的任何货币,包括加密货币,例如 ₿itcoin 和 Ξthereum
- 有一个 Docker 映像和一个 Heroku 脚本。
- 清晰的视图应该向您展示您的表现
- 轻松浏览您的记录
- 很多图表,因为我们都喜欢它们
Firefly III个人理财管家设置要求
- 安装灯 | LEMP堆栈
- PHP 7.3 和一些模块
- 作曲家
“机会难得。当下黄金雨时,拿出水桶,而不是顶针”
― 沃伦·巴菲特
第 1 步:更新和升级您的服务器
进入新 Ubuntu 服务器的终端后,更新和升级它并安装我们将使用的基本工具。
sudo apt update && sudo apt upgrade
sudo apt install vim git nginx curl -y
第 2 步:安装和设置 LEMP 堆栈
正如您所猜测的,Firefly III 需要一个网络服务器、一个数据库,并且由于它是用 PHP 编写的,因此我们也必须安装它。
安装并配置网络服务器和 PHP
在这里,您可以自由选择 Apache 或 Nginx。我们将在本指南中使用 Nginx。另外,我们将根据需要使用 PHP 7.3 版本。
安装 php-fpm 和依赖项
sudo apt install software-properties-common
sudo add-apt-repository ppa:ondrej/php
sudo apt update
sudo apt install -y php7.3 php7.3-{cli,zip,gd,fpm,json,common,mysql,zip,mbstring,curl,xml,bcmath,imap,ldap,intl}
检查 php-fpm 是否正在运行。
$ sudo systemctl status php7.3-fpm
● php7.3-fpm.service - The PHP 7.3 FastCGI Process Manager
Loaded: loaded (/lib/systemd/system/php7.3-fpm.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2020-07-13 13:27:53 EAT; 2min 12s ago
Docs: man:php-fpm7.3(8)
Process: 97804 ExecStartPost=/usr/lib/php/php-fpm-socket-helper install /run/php/php-fpm.sock /etc/php/7.3/fpm/pool.d/www.conf 73 (code=exi> Main PID: 97791 (php-fpm7.3)
Status: "Processes active: 0, idle: 2, Requests: 0, slow: 0, Traffic: 0req/sec"
Tasks: 3 (limit: 1035)
Memory: 10.7M
CGroup: /system.slice/php7.3-fpm.service
├─97791 php-fpm: master process (/etc/php/7.3/fpm/php-fpm.conf)
├─97802 php-fpm: pool www
└─97803 php-fpm: pool www
添加推荐的 PHP 设置
打开 php-fpm ini 文件并添加/编辑如下所示的详细信息。它们包括时区和内存限制设置。添加您的 date.timezone (大约在第 955 行)并将 memory_limit (大约在第 400 行)更改为 512MB。
$ sudo vim /etc/php/7.3/fpm/php.ini
memory_limit = 512M
[Date]
date.timezone = Africa/Nairobi
停止并禁用 Apache
在 Ubuntu 中安装 PHP 时,Apache 会拖拖拉拉。如果您不打算使用它,请停止并禁用它。
sudo systemctl stop apache2
sudo systemctl disable apache2
配置 Nginx 网络服务器
我们必须通过添加 Firefly 所需的详细信息来对 Nginx 默认配置进行一些更改。更改为启用站点,备份默认文件并创建一个具有新配置的新文件。
cd /etc/nginx/sites-enabled/
sudo mv default{,.bak}
创建一个新文件并添加如下所示的详细信息。如果您有 FQDN,请将 example.com 替换为它。
$ sudo vim /etc/nginx/sites-enabled/firefly.conf
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name example.com;
root /var/www/html/firefly-iii/public;
index index.html index.htm index.php;
location / {
try_files $uri /index.php$is_args$args;
}
location ~ \.php$ {
fastcgi_pass unix:/run/php/php7.3-fpm.sock;
fastcgi_index index.php;
fastcgi_read_timeout 240;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
fastcgi_split_path_info ^(.+.php)(/.+)$;
}
}
配置完成后,重新启动 php-fpm 和 nginx
sudo systemctl restart nginx php7.3-fpm
安装和配置 MariaDB 数据库服务器
我们将使用 MariaDB 进行此设置。幸运的是,我们已经有了安装 MariaDB 10.5 的详细指南。查看如何在 Ubuntu 上安装 MariaDB 10
安装数据库后,下一步是为 Firefly III 创建数据库和用户。因此,让我们继续完成此任务,如下所示。您可以自由地以不同的方式命名您的数据库和用户,并确保使用安全的密码。
$ mysql -u root -p
CREATE DATABASE firefly_database;
CREATE USER 'fireflyuser'@'localhost' IDENTIFIED BY 'StrongPassword';
GRANT ALL PRIVILEGES ON firefly_database. * TO 'fireflyuser'@'localhost';
FLUSH PRIVILEGES;
exit;
这很简单,而且速度快得惊人。
第 3 步:安装 PHP 作曲家
需要 Composer 才能安装 Firefly 的依赖项。执行以下操作来设置 Composer
cd ~
curl -sS https://getcomposer.org/installer -o composer-setup.php
sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer
通过运行composer命令测试composer是否安装成功
$ composer -V
Composer version 1.10.8 2020-06-24 21:23:30
步骤4:在Ubuntu 20.04上安装Firefly III | 18.04
安装 Composer 后,切换到上面 Nginx 中配置的保存根文件的目录,然后运行下面的 Composer 命令。最后一个数字是最新版本号,可以省略。
cd /var/www/html/
composer create-project grumpydictator/firefly-iii --no-dev --prefer-dist firefly-iii 5.2.8 ##This might take some time to complete!
在同一目录中,修复新文件的访问权限
sudo chown -R www-data:www-data firefly-iii
sudo chmod -R 775 firefly-iii/storage
步骤5:在Ubuntu 20.04上配置Firefly III | 18.04
在 firefly-iii 目录中,您将找到一个 .env 文件。使用您喜欢的编辑器打开此文件,并按照其中提供的说明进行以下与数据库相关的更改。数据库和用户名与我们在步骤 2 中设置的相同。
$ sudo vim /var/www/html/firefly-iii/.env
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=firefly_database
DB_USERNAME=fireflyuser
DB_PASSWORD=StrongPassword
另请检查下面的屏幕截图。
请注意,如果您希望 Firefly III 向您发送邮件,.env 文件也具有邮件设置。
初始化数据库
这一步非常重要,因为Firefly III需要一个数据库才能工作,它会告诉你你的配置是否正确。在 Firefly III 目录中运行以下命令。
cd /var/www/html/firefly-iii
sudo php artisan migrate:refresh --seed
sudo php artisan firefly-iii:upgrade-database
sudo php artisan passport:install
设置日志轮换
Logrotate 将确保日志得到良好的压缩和轮换,从而帮助您有效地管理日志。对 Firefly III 日志使用 logrotate 应该不会有任何危害。
sudo vim /etc/logrotate.d/firefly-iii
##Example config:
/opt/firefly-iii/storage/logs/*.log
{
weekly
missingok
rotate 2
compress
notifempty
sharedscripts
maxage 60
}
第6步:在Ubuntu 20.04上访问Firefly III | 18.04
您现在 可以通过浏览网站 http://domain-name-or-password/ 来访问 Firefly III Web 界面。您应该会看到登录屏幕,但您还无法登录。点击“注册新帐户”并填写表格。密码必须至少为 16 个字符。
您将自动登录。按照说明操作就完成了!
现在您已准备好制定预算、跟踪您的支出、跟踪您的储蓄并成为一个更好的人。它有很多可以利用的宝贵工具。
我们的私人理财经理应该能让我们飞得更高,因为它已经触手可及。 Firefly III 是一款令人惊叹的软件,您应该安装它以供个人使用。您一定会喜欢的。感谢开发者和贡献者。精彩的工作!作为本次会议的结束,我们衷心感谢您的光临并坚持到最后。
其他人还读到:
如何在 CentOS 8 上安装发票忍者
学习 Web 开发的最佳书籍 - PHP、HTML、CSS、JavaScript 和 jQuery
如何在 Ubuntu 上安装 Odoo 13