Встановлення Firefly III на VPS через Docker/Docker Compose — це оптимальний спосіб отримати повний контроль над вашими фінансами, що вимагає VPS з мінімум 2 vCPU, 2 GB RAM та 20 GB NVMe диском, що обійдеться приблизно в $5-10 на місяць.
Firefly III — це потужний, орієнтований на самохостинг інструмент для управління особистими фінансами з відкритим вихідним кодом. Він надає детальний контроль над вашими доходами, витратами, бюджетами та активами, дозволяючи вам приймати обґрунтовані фінансові рішення. На відміну від багатьох хмарних рішень, Firefly III self-hosted гарантує повну конфіденційність та безпеку ваших даних, оскільки вони зберігаються на вашому власному сервері. Цей підхід особливо цінний для тих, хто цінує приватність і не хоче довіряти свої фінансові дані стороннім сервісам. У цій статті ми детально розглянемо, як виконати встановлення Firefly III на VPS, використовуючи Docker та Docker Compose, налаштувати його для безпечного доступу через інтернет та забезпечити надійне обслуговування.
Що таке Firefly III і чому він ідеальний для самохостингу на VPS?
Firefly III є безкоштовною та відкритою веб-платформою для управління особистими фінансами. Вона розроблена для того, щоб допомогти користувачам відстежувати свої доходи та витрати, планувати бюджет, управляти активами та пасивами, а також отримувати глибоке розуміння свого фінансового стану через детальні звіти та графіки. Основна перевага Firefly III полягає в його гнучкості та можливості повного налаштування під індивідуальні потреби, що робить його ідеальним кандидатом для розгортання на власному сервері.
Основні можливості та переваги Firefly III
Firefly III пропонує широкий спектр функцій, які роблять його одним із найпросунутіших інструментів для особистих фінансів:
- Відстеження транзакцій: Детальне логування всіх вхідних та вихідних грошових потоків з можливістю категоризації, додавання тегів та приміток.
- Бюджетування: Створення гнучких бюджетів для різних категорій витрат, відстеження їх виконання та отримання сповіщень про перевищення лімітів.
- Управління рахунками: Підтримка кількох типів рахунків (банківські, готівкові, кредитні картки, заощадження, інвестиції) з можливістю автоматичного імпорту даних з CSV, QIF, OFX, MT940 файлів.
- Правила та автоматизація: Налаштування правил для автоматичної категоризації та обробки транзакцій, що значно спрощує ведення обліку.
- Звіти та аналітика: Глибокі звіти за доходами, витратами, чистою вартістю, балансом та бюджетами з наочними графіками та діаграмами.
- Планування: Можливість планування майбутніх транзакцій та регулярних платежів.
- Підтримка валют: Мультивалютність з можливістю конвертації.
- Безпека: Підтримка двофакторної автентифікації (2FA) для додаткового захисту.
Ці функції, у поєднанні з відкритим вихідним кодом, роблять Firefly III потужним та прозорим інструментом для управління фінансами.
Firefly III self-hosted: повний контроль над даними
Вибір Firefly III self-hosted на власному VPS-сервері надає низку критичних переваг порівняно з хмарними або настільними рішеннями:
- Конфіденційність даних: Ваші фінансові дані залишаються лише у вас. Вони не зберігаються на серверах третіх сторін, що виключає ризик їх витоку або несанкціонованого доступу з боку компаній. Це особливо важливо у світлі зростаючих побоювань щодо приватності в інтернеті.
- Повний контроль: Ви контролюєте сервер, операційну систему, базу даних та сам додаток Firefly III. Це дозволяє налаштовувати систему під свої унікальні вимоги, встановлювати власні заходи безпеки та керувати оновленнями на свій розсуд.
- Доступність: Розгорнутий на VPS, Firefly III доступний з будь-якої точки світу через інтернет, при цьому ви зберігаєте повний контроль над інфраструктурою, на відміну від сторонніх хмарних сервісів.
- Гнучкість: Можливість інтеграції з іншими self-hosted сервісами на вашому VPS. Наприклад, ви можете використовувати той самий reverse proxy, що й для інших додатків, таких як Wallabag на VPS або Karakeep на VPS.
- Відсутність підписок: Після покупки VPS (який ви можете використовувати і для інших цілей), вам не потрібно платити щомісячні підписки за використання Firefly III, що робить його економічно вигідним у довгостроковій перспективі.
Розгортання Firefly III на сервері з використанням Docker спрощує процес встановлення та управління, ізолюючи додаток від основної системи та забезпечуючи його переносимість.
Системні вимоги для Firefly III: який VPS обрати?
Вибір відповідного VPS-сервера є ключовим кроком для забезпечення стабільної та швидкої роботи Firefly III. Хоча Firefly III не є надзвичайно ресурсоємним додатком для одного користувача, правильна конфігурація VPS забезпечує комфортну роботу та масштабованість.
Мінімальні та рекомендовані конфігурації для Firefly III на сервері
Для Firefly III потрібна база даних (PostgreSQL або MySQL/MariaDB) та кеш-сервер (Redis), які працюватимуть у Docker-контейнерах разом із самим додатком. Це впливає на загальні вимоги до ресурсів.
- Мінімальна конфігурація (для одного користувача або невеликої кількості транзакцій):
- Процесор (vCPU): 1-2 ядра. Firefly III написаний на PHP (Laravel), і для початкового налаштування та періодичного імпорту транзакцій може знадобитися обчислювальна потужність.
- Оперативна пам'ять (RAM): 2 GB. Цього достатньо для роботи Docker-демона, контейнерів Firefly III, PostgreSQL, Redis та операційної системи.
- Дисковий простір: 20 GB NVMe SSD. NVMe диски значно швидші за звичайні SSD, що критично для продуктивності бази даних та загального відгуку системи. 20 GB достатньо для ОС, Docker-образів та кількох років даних Firefly III.
- Операційна система: Ubuntu 22.04 LTS (рекомендується) або інша сучасна Linux-дистрибуція.
- Пропускна здатність мережі: 100 Мбіт/с.
- Рекомендована конфігурація (для сім'ї, активного використання, великого обсягу транзакцій):
- Процесор (vCPU): 2-4 ядра.
- Оперативна пам'ять (RAM): 4 GB. Це забезпечить більш плавну роботу при одночасному відкритті кількох звітів, імпорті великих CSV-файлів або використанні додаткових інтеграцій.
- Дисковий простір: 40-60 GB NVMe SSD. Більший обсяг диска забезпечить запас для зростання даних та резервних копій.
- Пропускна здатність мережі: 1 Гбіт/с.
Таблиця: Порівняння VPS-конфігурацій для Firefly III
Valebyte пропонує різні тарифні плани, які ідеально підходять для розгортання Firefly III. Нижче наведено таблицю з приблизними конфігураціями та їх застосовністю:
| Конфігурація VPS | vCPU | RAM | Диск (NVMe SSD) | Приблизна вартість/міс. | Застосовність для Firefly III |
|---|---|---|---|---|---|
| Початковий | 1 ядро | 2 GB | 20 GB | $5 - $7 | Мінімальна, для особистого використання з невеликим обсягом даних. Може бути повільною при імпорті. |
| Оптимальний | 2 ядра | 4 GB | 40 GB | $8 - $12 | Рекомендована, для активного особистого використання, сім'ї або невеликої кількості користувачів. Хороша продуктивність. |
| Просунутий | 4 ядра | 8 GB | 80 GB | $15 - $25 | Для дуже активних користувачів, великих обсягів даних, інтеграцій або якщо на VPS будуть розміщені інші додатки. |
Вибір оптимальної конфігурації залежить від ваших потреб. Для більшості користувачів "Оптимальний" тариф буде найкращим вибором, що забезпечує баланс між продуктивністю та вартістю.
Шукаєте надійний сервер для ваших проєктів?
VPS від $10/міс та виділені сервери від $9/міс з NVMe, DDoS-захистом та підтримкою 24/7.
Дивитися пропозиції →Підготовка VPS до встановлення Firefly III Docker
Перш ніж приступити безпосередньо до встановлення Firefly III, необхідно підготувати ваш VPS. Цей етап включає вибір операційної системи, базове налаштування безпеки та встановлення Docker з Docker Compose.
Вибір операційної системи та початкове налаштування
Для розгортання Firefly III ми рекомендуємо використовувати операційну систему Ubuntu Server 22.04 LTS (Long Term Support). Вона забезпечує стабільність, тривалу підтримку та має велику спільноту, що спрощує пошук рішень у разі виникнення проблем.
Після отримання доступу до вашого VPS за SSH (зазвичай з логіном root), виконайте наступні початкові кроки:
- Оновлення системи:
sudo apt update && sudo apt upgrade -yЦе оновить список пакетів та встановить усі доступні оновлення, що важливо для безпеки та стабільності.
- Створення звичайного користувача (необов'язково, але рекомендується):
Робота під користувачем
rootє небезпечною. Створіть нового користувача та надайте йому права sudo.sudo adduser ваш_користувач sudo usermod -aG sudo ваш_користувачПотім вийдіть із сесії
rootта увійдіть під новим користувачем. - Налаштування файрволу UFW:
UFW (Uncomplicated Firewall) — це простий у використанні файрвол для Linux. Відкрийте необхідні порти:
- 22/tcp: Для SSH-доступу.
- 80/tcp: Для HTTP (пізніше буде перенаправлено на HTTPS).
- 443/tcp: Для HTTPS.
sudo ufw allow OpenSSH sudo ufw allow http sudo ufw allow https sudo ufw enableПідтвердіть увімкнення файрволу, ввівши
y. - Налаштування часового поясу:
sudo timedatectl set-timezone Europe/Moscow # або ваш часовий пояс
Встановлення Docker та Docker Compose
Для встановлення Firefly III Docker-образів нам знадобиться Docker Engine та Docker Compose. Docker спрощує розгортання додатків, ізолюючи їх у контейнерах, а Docker Compose дозволяє керувати багатоконтейнерними додатками за допомогою одного файлу конфігурації.
- Встановлення Docker Engine:
Видаліть старі версії Docker (якщо є):
for pkg in docker.io docker-doc docker-compose docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin; do sudo apt remove $pkg; doneВстановіть необхідні пакети для встановлення Docker через HTTPS:
sudo apt install ca-certificates curl gnupg lsb-release -yДодайте офіційний GPG ключ Docker:
sudo mkdir -p /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpgДодайте репозиторій Docker:
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/nullОновіть список пакетів та встановіть Docker Engine:
sudo apt update sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y - Додавання користувача до групи docker:
Щоб запускати Docker-команди без
sudo, додайте вашого користувача до групиdocker:sudo usermod -aG docker ваш_користувачВийдіть і знову увійдіть в SSH-сесію, щоб зміни набули чинності.
- Перевірка встановлення Docker:
docker run hello-worldВи повинні побачити повідомлення "Hello from Docker!".
Тепер ваш VPS готовий до встановлення Firefly III з використанням Docker Compose.
Шукаєте сервер, який просто працює?
Valebyte VPS — NVMe, підтримка 24/7, розгортання за 60 секунд.
Покрокове встановлення Firefly III на VPS з Docker Compose
Встановлення Firefly III на VPS з Docker Compose — це найбільш рекомендований та зручний спосіб. Він дозволяє розгорнути всі необхідні компоненти (Firefly III, базу даних PostgreSQL та кеш Redis) як ізольовані контейнери, керовані одним файлом docker-compose.yml.
Створення файлу docker-compose.yml для Firefly III
Створіть нову директорію для Firefly III та перейдіть до неї:
mkdir ~/firefly-iii
cd ~/firefly-iii
Потім створіть файл docker-compose.yml:
nano docker-compose.yml
Вставте наступний вміст. Це стандартна конфігурація, рекомендована розробниками Firefly III. Обов'язково змініть значення YOUR_APP_KEY, POSTGRES_PASSWORD, FIREFLY_DB_PASSWORD на випадкові, складні паролі. Ви можете згенерувати APP_KEY командою php artisan key:generate --show у контейнері Firefly III після його запуску, але для простоти можна використовувати будь-який довгий випадковий набір символів зараз і змінити пізніше, якщо буде потрібно.
version: "3.8"
services:
firefly-iii:
image: fireflyiii/core:latest
container_name: firefly-iii
volumes:
- firefly_upload:/var/www/html/storage/upload
- firefly_export:/var/www/html/storage/export
env_file: .env
depends_on:
- db
- redis
restart: always
ports:
- "8080:8080" # Порт, на якому Firefly III буде доступний всередині VPS.
networks:
- firefly_network
db:
image: postgres:15-alpine
container_name: firefly-db
volumes:
- firefly_db:/var/lib/postgresql/data
environment:
POSTGRES_DB: firefly
POSTGRES_USER: firefly
POSTGRES_PASSWORD: YOUR_POSTGRES_PASSWORD # Змініть на складний пароль
restart: always
networks:
- firefly_network
redis:
image: redis:7-alpine
container_name: firefly-redis
restart: always
networks:
- firefly_network
volumes:
firefly_upload:
firefly_export:
firefly_db:
networks:
firefly_network:
driver: bridge
Тепер створіть файл .env у тій самій директорії, який міститиме змінні оточення для Firefly III. Це дозволяє зберігати конфіденційні дані окремо від docker-compose.yml.
nano .env
Вставте наступний вміст, замінивши заповнювачі своїми значеннями:
# Firefly III Application Key
APP_KEY=YOUR_APP_KEY # Згенеруйте за допомогою `php artisan key:generate --show` або використовуйте довгий випадковий рядок
# Database Configuration
DB_CONNECTION=pgsql
DB_HOST=db
DB_PORT=5432
DB_DATABASE=firefly
DB_USERNAME=firefly
DB_PASSWORD=YOUR_POSTGRES_PASSWORD # Повинен збігатися з POSTGRES_PASSWORD у docker-compose.yml
# Redis Configuration
REDIS_HOST=redis
REDIS_PORT=6379
# Firefly III Specific Settings
TRUSTED_PROXIES=** # Важливо для роботи з reverse proxy, пізніше змініть на IP вашого Nginx/Caddy контейнера або підмережі Docker
# Other optional settings
TZ=Europe/Moscow # Ваш часовий пояс
DEFAULT_LOCALE=ru_RU # Або en_US, fr_FR тощо.
DEFAULT_CURRENCY=RUB # Або EUR, USD тощо.
Важливо: Переконайтеся, що YOUR_APP_KEY є довгим, випадковим рядком. Ви можете згенерувати його, тимчасово запустивши контейнер Firefly III, виконавши команду docker exec firefly-iii php artisan key:generate --show, а потім оновивши файл .env.
Запуск та початкове налаштування Firefly III
Після створення файлів docker-compose.yml та .env можна запускати Firefly III. Перейдіть до директорії ~/firefly-iii, якщо ви ще не там, і виконайте команду:
docker compose up -d
Ця команда завантажить необхідні Docker-образи (якщо їх немає локально), створить контейнери firefly-iii, firefly-db, firefly-redis та запустить їх у фоновому режимі (-d). Процес може зайняти кілька хвилин залежно від швидкості вашого інтернет-з'єднання та продуктивності VPS.
Ви можете перевірити статус контейнерів:
docker compose ps
Переконайтеся, що всі контейнери перебувають у стані "Up".
Початковий доступ:
Firefly III тепер доступний за IP-адресою вашого VPS та портом 8080. Відкрийте веб-браузер та перейдіть за адресою http://ВАША_IP_VPS:8080.
Ви побачите сторінку привітання Firefly III, де вам буде запропоновано створити першого користувача та налаштувати базові параметри. Дотримуйтесь інструкцій майстра встановлення.
Увага: Доступ за портом 8080 напряму не захищений HTTPS і не використовує ваше доменне ім'я. На наступному кроці ми налаштуємо reverse proxy для безпечного доступу.
Налаштування Reverse Proxy та HTTPS для Firefly III на сервері
Прямий доступ до Firefly III за IP-адресою та портом 8080 не є безпечним та професійним рішенням. Налаштування reverse proxy (зворотного проксі) з підтримкою HTTPS дозволяє забезпечити доступ до Firefly III за вашим доменним ім'ям, зашифрувати трафік та за необхідності розмістити кілька веб-сервісів на одній IP-адресі. Ми розглянемо два популярні варіанти: Nginx та Caddy.
Для цих кроків вам знадобиться:
- Зареєстрований домен (наприклад,
firefly.yourdomain.com). - DNS-запис типу A, що вказує на IP-адресу вашого VPS.
Nginx як Reverse Proxy для Firefly III
Nginx — це високопродуктивний веб-сервер та зворотний проксі, широко використовуваний для розгортання веб-додатків. Ми налаштуємо Nginx для перенаправлення трафіку з порту 80/443 на порт 8080 Firefly III та отримання безкоштовного SSL-сертифіката від Let's Encrypt за допомогою Certbot.
- Встановлення Nginx:
sudo apt install nginx -y - Створення конфігураційного файлу Nginx для Firefly III:
Створіть новий файл конфігурації для вашого домену:
sudo nano /etc/nginx/sites-available/firefly.confВставте наступний вміст, замінивши
firefly.yourdomain.comна ваш домен:server { listen 80; listen [::]:80; server_name firefly.yourdomain.com; # Замініть на ваш домен location / { proxy_pass http://127.0.0.1:8080; # Перенаправляємо на порт Firefly III 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 X-Forwarded-Proto $scheme; } } - Активація конфігурації:
Створіть символічне посилання на файл конфігурації в
sites-enabled:sudo ln -s /etc/nginx/sites-available/firefly.conf /etc/nginx/sites-enabled/Перевірте синтаксис Nginx та перезавантажте його:
sudo nginx -t sudo systemctl reload nginxТепер Firefly III має бути доступний за
http://firefly.yourdomain.com. - Встановлення Certbot та отримання SSL-сертифіката:
sudo apt install certbot python3-certbot-nginx -yОтримайте сертифікат Let's Encrypt та автоматично налаштуйте Nginx:
sudo certbot --nginx -d firefly.yourdomain.comДотримуйтесь інструкцій Certbot. Він запитає вас, чи бажаєте ви перенаправляти HTTP на HTTPS (рекомендується) та надасть опції для оновлення сертифіката. Після успішного налаштування Firefly III буде доступний за
https://firefly.yourdomain.com. - Оновлення TRUSTED_PROXIES у .env:
Щоб Firefly III правильно визначав IP-адреси клієнтів через Nginx, оновіть змінну
TRUSTED_PROXIESу файлі.env.nano ~/firefly-iii/.envЗмініть
TRUSTED_PROXIES=**наTRUSTED_PROXIES=172.16.0.0/12абоTRUSTED_PROXIES=10.0.0.0/8, щоб охопити всю підмережу Docker Bridge, або на IP-адресу вашого Nginx-контейнера, якщо Nginx також працює в Docker. Якщо Nginx встановлено безпосередньо на VPS, можна залишити**або вказати127.0.0.1.Після зміни
.env, перезапустіть контейнер Firefly III:cd ~/firefly-iii docker compose restart firefly-iii
Caddy: простий спосіб отримати HTTPS для Firefly III
Caddy — це сучасний веб-сервер, який автоматично керує SSL/TLS-сертифікатами Let's Encrypt. Він значно простіший у налаштуванні для HTTPS, ніж Nginx з Certbot.
- Встановлення Caddy:
Додайте ключ GPG:
sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpgДодайте репозиторій:
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.listОновіть та встановіть Caddy:
sudo apt update sudo apt install caddy -y - Створення Caddyfile:
Створіть або відредагуйте основний файл конфігурації Caddy:
sudo nano /etc/caddy/CaddyfileВидаліть весь вміст та вставте наступне, замінивши
firefly.yourdomain.comна ваш домен:firefly.yourdomain.com { reverse_proxy 127.0.0.1:8080 { header_up Host {host} header_up X-Real-IP {remote_ip} header_up X-Forwarded-For {remote_ip} header_up X-Forwarded-Proto {scheme} } }Caddy автоматично отримає та оновить SSL-сертифікати для
firefly.yourdomain.com. - Перевірка та запуск Caddy:
sudo caddy validate --config /etc/caddy/Caddyfile sudo systemctl reload caddyТепер Firefly III має бути доступний за
https://firefly.yourdomain.com. - Оновлення TRUSTED_PROXIES у .env:
Аналогічно Nginx, оновіть
TRUSTED_PROXIESу~/firefly-iii/.env, якщо Caddy встановлено безпосередньо на VPS, можна залишити**або127.0.0.1.cd ~/firefly-iii docker compose restart firefly-iii
Тепер ваш Firefly III self-hosted доступний за захищеним HTTPS-з'єднанням через ваше доменне ім'я.
Обслуговування Firefly III: бекапи, оновлення та моніторинг
Регулярне обслуговування є критично важливим для будь-якої self-hosted установки, і Firefly III не виняток. Воно включає створення резервних копій, своєчасне оновлення та моніторинг продуктивності.
Стратегії резервного копіювання даних Firefly III
Втрата фінансових даних може бути катастрофічною. Тому вкрай важливо регулярно створювати резервні копії. У нашому випадку, основні дані Firefly III зберігаються в базі даних PostgreSQL та у файлах, які знаходяться в Docker-томах.
Рекомендована стратегія бекапу:
- Резервне копіювання бази даних PostgreSQL:
Це найважливіший компонент. Ви можете створити дамп бази даних за допомогою
pg_dumpзсередини контейнераfirefly-db.docker exec firefly-db pg_dump -U firefly -d firefly > ~/firefly-iii/backups/firefly_db_$(date +%Y%m%d%H%M%S).sqlПереконайтеся, що директорія
~/firefly-iii/backups/існує:mkdir -p ~/firefly-iii/backups/. - Резервне копіювання Docker-томів:
Томи
firefly_uploadтаfirefly_exportмістять завантажені файли (наприклад, виписки) та експортовані звіти. Їх також слід регулярно копіювати.Ви можете скопіювати вміст томів, використовуючи допоміжний контейнер або безпосередньо з файлової системи VPS, якщо знаєте, де Docker зберігає томи (зазвичай
/var/lib/docker/volumes/).Приклад копіювання тому
firefly_upload:docker run --rm --volumes-from firefly-iii -v $(pwd)/backups:/backup alpine tar cvf /backup/firefly_upload_$(date +%Y%m%d%H%M%S).tar /var/www/html/storage/upload - Автоматизація бекапів з Cron:
Створіть скрипт, який виконує обидві команди бекапу, та налаштуйте його запуск через Cron. Наприклад, щоденний бекап о 3 ранку:
crontab -eДодайте рядок (переконайтеся, що шляхи правильні):
0 3 * * * /bin/bash -c "cd /home/ваш_користувач/firefly-iii && docker exec firefly-db pg_dump -U firefly -d firefly > /home/ваш_користувач/firefly-iii/backups/firefly_db_$(date +%Y%m%d%H%M%S).sql && docker run --rm --volumes-from firefly-iii -v $(pwd)/backups:/backup alpine tar cvf /backup/firefly_upload_$(date +%Y%m%d%H%M%S).tar /var/www/html/storage/upload" - Зовнішнє зберігання бекапів:
Найважливіший аспект бекапів — зберігати їх поза VPS. Використовуйте rsync, scp, sftp або хмарні сховища (S3, Backblaze B2) для переміщення резервних копій з вашого VPS на інше безпечне місце. Це захистить вас у разі збою VPS або втрати даних.
Оновлення Firefly III Docker-контейнерів
Розробники Firefly III регулярно випускають оновлення, які включають нові функції, виправлення помилок та покращення безпеки. Оновлювати Firefly III через Docker Compose дуже просто:
cd ~/firefly-iii
docker compose pull # Завантажує останні образи для всіх сервісів
docker compose up -d # Перестворює контейнери з новими образами, зберігаючи томи даних
docker image prune -f # Видаляє старі, невикористовувані Docker-образи для економії місця
Завжди рекомендується прочитати changelog (список змін) на офіційному сайті Firefly III перед оновленням, щоб бути в курсі можливих змін або вимог до міграції бази даних (хоча Docker Compose зазвичай обробляє це автоматично).
Моніторинг продуктивності VPS для Firefly III
Моніторинг вашого VPS допоможе вам переконатися, що Firefly III працює ефективно і немає проблем з ресурсами. Ви можете використовувати різні інструменти:
htopабоtop: Прості утиліти командного рядка для перегляду використання CPU, RAM та процесів.df -h: Перевірка використання дискового простору.docker stats: Показує використання ресурсів окремими Docker-контейнерами.- Системи моніторингу: Для більш просунутого моніторингу розгляньте такі інструменти, як Netdata на VPS. Netdata надає докладні графіки та метрики в реальному часі для всієї системи та Docker-контейнерів, допомагаючи виявляти вузькі місця або аномалії в роботі.
Регулярний моніторинг допоможе вам своєчасно реагувати на проблеми та, за необхідності, масштабувати ваш VPS, щоб Firefly III завжди працював швидко та стабільно.
Шукаєте сервер, який просто працює?
Valebyte VPS — NVMe, підтримка 24/7, розгортання за 60 секунд.
Оптимальний VPS-конфіг для Firefly III під реальне навантаження
Вибір оптимального VPS-конфігу для Firefly III залежить від ваших індивідуальних потреб та передбачуваного навантаження. Ми вже розглянули мінімальні та рекомендовані вимоги, але давайте заглибимося в те, який VPS-конфіг буде ідеальним для різних сценаріїв використання Firefly III під реальне навантаження.
Рекомендації щодо масштабування та вибору тарифу
- Для індивідуального використання (1-2 користувачі, до 1000 транзакцій на місяць):
- vCPU: 2 ядра. Це забезпечить достатню продуктивність для швидкого запуску, обробки правил та імпорту невеликих обсягів даних.
- RAM: 2-4 GB. 2 GB вистачить, але 4 GB дадуть більший запас для кешування та фонових завдань.
- Диск: 20-40 GB NVMe SSD. Швидкість NVMe критична для бази даних, а 20-40 GB вистачить на довгі роки.
- Приблизна вартість: $7-10/міс.
- Примітка: Якщо ви плануєте розміщувати на цьому ж VPS інші легковажні self-hosted додатки, наприклад, Miniflux на VPS або FreshRSS на VPS, вибирайте ближче до верхньої межі рекомендацій щодо RAM та диска.
- Для сім'ї або невеликого колективу (3-5 користувачів, до 5000 транзакцій на місяць):
- vCPU: 4 ядра. Це забезпечить комфортну роботу кількох користувачів одночасно, а також швидку генерацію складних звітів.
- RAM: 4-8 GB. 4 GB — хороший старт, 8 GB забезпечать максимальну продуктивність без затримок.
- Диск: 60-80 GB NVMe SSD. Більший обсяг диска необхідний для зростаючої бази даних, файлів та бекапів.
- Приблизна вартість: $15-25/міс.
- Примітка: У цьому сценарії важлива стабільність та швидкість дискової підсистеми, тому NVMe SSD — обов'язковий.
- Для розширеного використання / інтеграцій (більше 5 користувачів, понад 5000 транзакцій, API-інтеграції):
- vCPU: 6-8 ядер.
- RAM: 8-16 GB.
- Диск: 100+ GB NVMe SSD.
- Приблизна вартість: $30+/міс.
- Примітка: Якщо ви активно використовуєте API Firefly III для інтеграції з іншими системами або обробляєте дуже великий обсяг даних, такий конфіг забезпечить необхідну потужність.
При виборі VPS для Firefly III на сервері у Valebyte, зверніть увагу на наступні аспекти:
- Тип диска: Завжди вибирайте NVMe SSD для максимальної продуктивності бази даних.
- Місце розташування сервера: Виберіть дата-центр, розташований ближче до вас для мінімальної затримки (ping).
- Масштабованість: Переконайтеся, що ваш провайдер дозволяє легко масштабувати ресурси (CPU, RAM, диск) у майбутньому, якщо ваші потреби зростуть.
- Підтримка: Наявність кваліфікованої технічної підтримки може бути дуже корисною, особливо якщо ви новачок у self-hosted рішеннях.
Загалом, для більшості користувачів Firefly III оптимальним вибором буде VPS з 2-4 ядрами CPU, 4 GB RAM та 40-60 GB NVMe диска. Це забезпечить відмінний баланс між продуктивністю та вартістю, дозволяючи вам ефективно управляти своїми фінансами.
Висновки
Встановлення Firefly III на VPS з використанням Docker Compose — це надійний та гнучкий спосіб отримати повний контроль над вашими фінансовими даними. Такий підхід забезпечує високий ступінь приватності, зручність обслуговування та можливість масштабування. Для більшості користувачів оптимальним вибором буде VPS з 2-4 vCPU, 4 GB RAM та 40-60 GB NVMe диска, який Valebyte пропонує за конкурентоспроможними цінами, забезпечуючи при цьому стабільність та продуктивність.
Готові вибрати сервер?
VPS та виділені сервери в 72+ країнах з миттєвою активацією та повним root-доступом.
Почати зараз →