Как установить Firefly III в Ubuntu 20.04 LTS

Как установить Firefly III в Ubuntu 20.04 LTS

 

В этом руководстве мы покажем вам, как установить Firefly III в Ubuntu 20.04 LTS. Для тех из вас, кто не знал, Firefly III — это бесплатное программное обеспечение для управления личными финансами с открытым исходным кодом, написанное на PHP. Это помогает вам отслеживать свои расходы, доходы, бюджеты и другие аспекты ваших финансов с автономного сервера в вашем собственном доме и окружающей среде. Firefly III поддерживает использование бюджетов, категорий и тегов. Он может импортировать данные из внешних источников и имеет множество доступных финансовых отчетов.

В этой статье предполагается, что у вас есть хотя бы базовые знания Linux, вы знаете, как использовать оболочку, и, что наиболее важно, вы размещаете свой сайт на собственном VPS. Установка довольно проста и предполагает, что вы работаете с учетной записью root, в противном случае вам может потребоваться добавить ‘ sudo‘ к командам для получения привилегий root. Я покажу вам пошаговую установку Firefly III на Ubuntu 20.04 (Focal Fossa). Вы можете следовать тем же инструкциям для Ubuntu 18.04, 16.04 и любого другого дистрибутива на основе Debian, например Linux Mint.

Установите Firefly III на Ubuntu 20.04 LTS Focal Fossa

Шаг 1. Во-первых, убедитесь, что все ваши системные пакеты обновлены, выполнив следующие aptкоманды в терминале.

sudo apt update
sudo apt upgrade

Шаг 2. Установка стека LAMP.

Требуется сервер Ubuntu 20.04 LAMP. Если у вас не установлена ​​LAMP, вы можете следовать нашему руководству здесь .

Шаг 3. Установка PHP Composer.

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

Шаг 3. Установка Firefly III в Ubuntu 20.04.

Теперь скачиваем последнюю версию Firefly с официального сайта:

cd /var/www/
sudo composer create-project grumpydictator/firefly-iii --no-dev --prefer-dist firefly-iii 5.2.8

Затем отредактируйте файл. Итак, откройте файл и внесите изменения в соответствии с вашей средой:.env

sudo nano /var/www/firefly-iii/.env

После открытия файла внесите в него выделенные ниже изменения:

Database credentials. Make sure the database exists. I recommend a dedicated user for Firefly III
For other database types, please see the FAQ: https://docs.firefly-iii.org/support/faq
If you use Docker or similar, you can set these variables from a file by appending them with _FILE
Use "mysql" for MySQL and MariaDB. Use "sqlite" for SQLite.
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=firefly
DB_USERNAME=fireflyuser
DB_PASSWORD=your-stronge-password-here

После этого вернитесь в корневой каталог Firefly III и обновите все пакеты и требования с помощью команд:

cd /var/www/firefly-iii
sudo php artisan migrate:refresh --seed
sudo php artisan firefly-iii:upgrade-database
sudo php artisan passport:install

Находясь в том же каталоге, исправьте права доступа для новых файлов:

sudo chown -R www-data:www-data /var/www/firefly-iii/
sudo chmod -R 755 /var/www/firefly-iii/

Шаг 4. Настройка MariaDB.

По умолчанию MariaDB не усилен. Вы можете защитить MariaDB с помощью mysql_secure_installationскрипта. вы должны внимательно прочитать и под каждым шагом, который установит пароль root, удалит анонимных пользователей, запретит удаленный вход root, а также удалит тестовую базу данных и доступ к безопасности MariaDB:

mysql_secure_installation

Настройте это так:

- Set root password? [Y/n] y
- Remove anonymous users? [Y/n] y
- Disallow root login remotely? [Y/n] y
- Remove test database and access to it? [Y/n] y
- Reload privilege tables now? [Y/n] y

Затем нам нужно будет войти в консоль MariaDB и создать базу данных для Firefly III. Выполните следующую команду:

mysql -u root -p

Вам будет предложено ввести пароль, поэтому введите пароль root для MariaDB и нажмите Enter. После входа на сервер базы данных вам необходимо создать базу данных для установки Firefly III:

CREATE DATABASE firefly;
CREATE USER 'fireflyuser'@'localhost' IDENTIFIED BY 'Your-Strong-Passwd';
GRANT ALL PRIVILEGES ON `firefly`.* TO 'fireflyuser'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Шаг 5. Настройка веб-сервера Apache для PrestaShop.

Создайте новую директиву виртуального хоста в Apache. Например, создайте новый файл конфигурации Apache с именем ‘ ‘ на вашем виртуальном сервере:firefly.conf

touch /etc/apache2/sites-available/firefly.conf
ln -s /etc/apache2/sites-available/firefly.conf /etc/apache2/sites-enabled/firefly.conf
nano /etc/apache2/sites-available/firefly.conf

Добавьте следующие строки:

<VirtualHost *:80>
ServerAdmin admin@your-domain.com
DocumentRoot /var/www/firefly-iii/public/
ServerName your-domain.com
ServerAlias www.your-domain.com
<Directory /var/www/firefly-iii/public/>
Options FollowSymLinks
AllowOverride All
Order allow,deny
allow from all
</Directory>
ErrorLog /var/log/apache2/your-domain.com-error_log
CustomLog /var/log/apache2/your-domain.com-access_log common
</VirtualHost>

Теперь мы можем перезапустить веб-сервер Apache, чтобы изменения вступили в силу:

sudo a2enmod rewrite
sudo a2ensite firefly.conf 
sudo systemctl restart apache2.service

Шаг 6. Настройте HTTPS.

Мы должны включить безопасное соединение HTTPS в PrestaShop. Мы можем получить бесплатный сертификат TLS от Let’s Encrypt. Установите клиент Let’s Encrypt (certbot) из репозитория Ubuntu 20.04:

sudo apt install certbot python3-certbot-apache

Затем выполните следующую команду, чтобы получить бесплатный сертификат TLS с помощью плагина Apache:

sudo certbot --apache --agree-tos --redirect --staple-ocsp --email you@example.com -d example.com

Если проверка прошла успешно, перезагрузите Apache, чтобы изменения вступили в силу:

sudo apache2ctl -t
sudo systemctl reload apache2

Шаг 7. Доступ к веб-интерфейсу Firefly III.

Firefly III будет доступен по HTTP-порту 80 по умолчанию. Откройте свой любимый браузер, перейдите к нужным шагам и выполните необходимые действия, чтобы завершить установку. Если вы используете брандмауэр, откройте порт 80, чтобы получить доступ к панели управления.https://your-domain.com/

Поздравляю! Вы успешно установили Firefly. Благодарим за использование этого руководства для установки Firefly III в системе Ubuntu 20.04 LTS Focal Fossa. Для получения дополнительной помощи или полезной информации мы рекомендуем вам посетить официальный сайт Firefly .