Η φιλοξενία του Firefly III σε ένα Managed VPS σημαίνει ότι οι λογαριασμοί, οι προϋπολογισμοί και οι δαπάνες σας βρίσκονται σε ένα δικό σας μηχάνημα, που οι ομάδες μας κρατούν ενημερωμένο και επιτηρούν μέρα και νύχτα. Το Firefly III είναι ελεύθερο λογισμικό ανοιχτού κώδικα για τη διαχείριση των προσωπικών οικονομικών, με άδεια AGPL. Ο οδηγός αυτός ακολουθεί την επίσημη τεκμηρίωσή του: την εγκατάσταση με Docker Compose, το APP_KEY, το HTTPS, τον πρώτο λογαριασμό, την εργασία cron, τη βάση δεδομένων, το εργαλείο εισαγωγής δεδομένων, τα email, τα αντίγραφα ασφαλείας και τις ενημερώσεις.
Συντάκτης: Simon Vasconcelos Lee
Δημοσιεύθηκε στις 10 Νοεμβρίου 2026Χρόνος ανάγνωσης: 13 λεπτά
docker-compose.yml, .env και .db.env. Επιλέξτε τον κωδικό πρόσβασης της βάσης πριν από την πρώτη εκκίνηση.APP_KEY έχει μήκος ακριβώς 32 χαρακτήρων, μένει μυστικό και μπαίνει στα αντίγραφα ασφαλείας μαζί με τα δεδομένα.TRUSTED_PROXIES=* και τη διεύθυνσή σας στο APP_URL, και δημιουργήστε αμέσως τον λογαριασμό σας: ο πρώτος χρήστης που εγγράφεται γίνεται ο ιδιοκτήτης, και οι εγγραφές κλείνουν στη συνέχεια.cron του επίσημου αρχείου τρέχει κάθε νύχτα τους αυτόματους προϋπολογισμούς και τις επαναλαμβανόμενες συναλλαγές. Κρατήστε αντίγραφο της βάσης, του τόμου των συνημμένων και του .env πριν από κάθε ενημέρωση.Το Firefly III είναι ένα εργαλείο διαχείρισης προσωπικών οικονομικών σχεδιασμένο για self-hosting. Καταγράφει τα έξοδα και τα έσοδά σας, με προϋπολογισμούς, κατηγορίες και ετικέτες, ώστε να βλέπετε πού πηγαίνουν τα χρήματά σας. Το README του το περιγράφει ως πλήρως αυτο-φιλοξενούμενο και απομονωμένο: δεν επικοινωνεί με κανέναν εξωτερικό διακομιστή μέχρι να του το ζητήσετε ρητά.
Ένα στιγμιότυπο φιλοξενεί όσους χρήστες θέλετε, ο καθένας με μια οικονομική διαχείριση πλήρως διαχωρισμένη από τις άλλες. Η τεκμηρίωση περιγράφει ένα μοντέλο κοινής χρήσης μίας ενιαίας διαχείρισης, που βρίσκεται σε ανάπτυξη.
Το Firefly III δημοσιεύεται με την GNU Affero General Public License, έκδοση 3 ή, κατ’ επιλογή σας, οποιαδήποτε νεότερη έκδοση: αυτό σημαίνει το αναγνωριστικό SPDX AGPL-3.0-or-later στο αρχείο του composer.json. Το κείμενο δηλώνει απεριόριστη άδεια εκτέλεσης του αμετάβλητου προγράμματος. Μπορείτε λοιπόν να χρησιμοποιείτε την εικόνα που δημοσιεύει το έργο για εσάς, την οικογένειά σας ή την επιχείρησή σας, χωρίς να αγοράσετε άδεια.
Το άρθρο 13 προσθέτει έναν όρο ιδιαίτερο της AGPL: αν τροποποιήσετε το πρόγραμμα, η έκδοσή σας πρέπει να προσφέρει σε όσους τη χρησιμοποιούν εξ αποστάσεως, μέσω δικτύου, τη δυνατότητα να αποκτήσουν δωρεάν τον πηγαίο κώδικά της. Το εργαλείο εισαγωγής δεδομένων (Data Importer) έχει την ίδια άδεια.
Η τεκμηρίωση θεωρεί το Docker Compose τον απλούστερο τρόπο εγκατάστασης του Firefly III. Σε έναν διακομιστή όπου είναι εγκατεστημένο το Docker, δημιουργήστε έναν φάκελο και κατεβάστε σε αυτόν τα τρία επίσημα αρχεία, αυτούσια: τα κενά τους μετρούν, και η τεκμηρίωση ζητά να μην τα αντιγράφετε από τον περιηγητή.
mkdir firefly-iii && cd firefly-iii
curl -o docker-compose.yml https://raw.githubusercontent.com/firefly-iii/docker/main/docker-compose.yml
curl -o .env https://raw.githubusercontent.com/firefly-iii/firefly-iii/main/.env.example
curl -o .db.env https://raw.githubusercontent.com/firefly-iii/docker/main/database.env
docker-compose.yml περιγράφει τρεις υπηρεσίες: την app, την εφαρμογή, την db, μια βάση MariaDB, και την cron, την προγραμματισμένη εργασία..env περιέχει τις ρυθμίσεις του Firefly III, μεταξύ των οποίων το κλειδί κρυπτογράφησης και την πρόσβαση στη βάση..db.env περιέχει τις ρυθμίσεις της βάσης. Κρατήστε και τα δύο ονόματα: το αρχείο Compose αναφέρεται σε αυτά μέσω του env_file.Δημιουργήστε δύο συμβολοσειρές 32 χαρακτήρων με την εντολή που δίνει το αρχείο .env: μία για το κλειδί, μία για τον κωδικό πρόσβασης της βάσης.
head /dev/urandom | LC_ALL=C tr -dc 'A-Za-z0-9' | head -c 32 && echo
SITE_OWNER=you@example.com
APP_KEY=
DB_PASSWORD=
APP_URL=https://finances.example.com
MYSQL_PASSWORD=
APP_KEY κρυπτογραφεί τις συνεδρίες σας. Έχει μήκος ακριβώς 32 χαρακτήρων, χωρίς ειδικούς χαρακτήρες όπως =, #, < ή >, και το αρχείο ζητά να το φυλάτε πολύ καλά.DB_PASSWORD στο .env και το MYSQL_PASSWORD στο .db.env παίρνουν την ίδια τιμή.SITE_OWNER: η διεύθυνσή σας, που εμφανίζεται σε ορισμένα σφάλματα στους χρήστες που δεν είναι διαχειριστές.APP_URL: η δημόσια διεύθυνση του στιγμιοτύπου σας. Το αρχείο εξηγεί ότι χρησιμεύει για την επικύρωση ορισμένων αιτημάτων και για τη δημιουργία των συνδέσμων στα email.TZ: η ζώνη ώρας σας, σε μορφή της βάσης tz, όπως δείχνει το παράδειγμα του αρχείου.Επιλέξτε τον κωδικό πρόσβασης της βάσης πριν από την πρώτη εκκίνηση. Η βάση τον αποθηκεύει στον τόμο της μόλις δημιουργηθεί: αν τον αλλάξετε αργότερα, δεν ταιριάζει πια, και οι συχνές ερωτήσεις Docker δίνουν μία μόνο λύση, να διαγράψετε τα κοντέινερ και τους τόμους και να ξεκινήσετε από την αρχή.
Το επίσημο αρχείο δημοσιεύει την εφαρμογή στη θύρα 80 όλων των διευθύνσεων του διακομιστή. Για να τη σερβίρετε σε HTTPS πίσω από έναν reverse proxy στο ίδιο μηχάνημα, αλλάξτε αυτή τη μοναδική γραμμή στην υπηρεσία app:
ports:
- 127.0.0.1:8080:8080
docker compose -f docker-compose.yml up -d --pull=always
docker compose -f docker-compose.yml logs -f
Στην πρώτη εκκίνηση, το κοντέινερ δημιουργεί και μεταπτώνει μόνο του τη βάση. Όταν ολοκληρωθεί η εγκατάσταση, το Firefly III σας ευχαριστεί στο αρχείο καταγραφής: περάστε στον reverse proxy.
latest ακολουθεί την τελευταία σταθερή έκδοση. Μια ετικέτα όπως η version-6.7.9 καθηλώνει μια έκδοση· το έργο αφαιρεί τις παλιές μετά από περίπου έξι μήνες.linux/amd64 και linux/arm64.firefly_iii_upload κρατά τα συνημμένα, ο firefly_iii_db τη βάση.Η τεκμηρίωση δεν δίνει αριθμό για τη μνήμη· οι συχνές ερωτήσεις Docker προτείνουν PHP_MEMORY_LIMIT=512M ή περισσότερο αν η PHP ξεμείνει από μνήμη. Το μέγεθος εξαρτάται από τον αριθμό των χρηστών, τον όγκο των συναλλαγών και το εργαλείο εισαγωγής δεδομένων. Σε ένα Managed VPS, περιγράψτε μας τη χρήση σας και σας προτείνουμε το μέγεθος που ταιριάζει.
Το Firefly III σερβίρει την εφαρμογή σε HTTP στη θύρα 8080 μέσα στο κοντέινερ, και το HTTPS βρίσκεται στον reverse proxy που τοποθετείται μπροστά του. Η εφαρμογή διαβάζει την κεφαλίδα X-Forwarded-Proto για να ξέρει ότι ο επισκέπτης έφτασε σε HTTPS, με την προϋπόθεση ότι εμπιστεύεται τον proxy:
TRUSTED_PROXIES=*
Οι συχνές ερωτήσεις Docker είναι σαφείς σε αυτό το σημείο: χωρίς TRUSTED_PROXIES=*, οι σύνδεσμοι μένουν σε http, οι φόρμες και τα γραφήματα σταματούν να λειτουργούν, και οι κεφαλίδες ασφαλείας CSP αποτυγχάνουν. Με τη θύρα δημοσιευμένη στο 127.0.0.1, μόνο ο proxy του ίδιου του διακομιστή φτάνει στην εφαρμογή. Δημιουργήστε ξανά το κοντέινερ μετά από κάθε αλλαγή στο αρχείο .env:
docker compose up -d --force-recreate app
Το Caddy αποκτά μόνο του το πιστοποιητικό Let’s Encrypt, και η οδηγία του reverse_proxy ορίζει εξ ορισμού τις κεφαλίδες X-Forwarded-For, X-Forwarded-Proto και X-Forwarded-Host:
finances.example.com {
reverse_proxy 127.0.0.1:8080
}
Το μπλοκ αυτό ακολουθεί τις κεφαλίδες των συχνών ερωτήσεων εγκατάστασης, και τους buffers που προτείνουν κατά των σφαλμάτων 502 όταν η εφαρμογή επιστρέφει ένα token σε μια μεγάλη κεφαλίδα. Ακούει στη θύρα 80 ώστε να αφήσει το Certbot να στήσει το HTTPS:
server {
listen 80;
listen [::]:80;
server_name finances.example.com;
client_max_body_size 64M;
proxy_buffer_size 128k;
proxy_buffers 4 256k;
proxy_busy_buffers_size 256k;
location / {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_read_timeout 300s;
}
}
Το Certbot εγκαθιστά έπειτα το πιστοποιητικό και φροντίζει να το ανανεώνει:
sudo certbot --nginx
finances.example.com. Οι συχνές ερωτήσεις σημειώνουν ότι το Laravel δεν αναλύει μια σκέτη διεύθυνση IPv6 μέσα στο URL.Ο πρώτος χρήστης που εγγράφεται γίνεται ο ιδιοκτήτης του στιγμιοτύπου. Για λόγους ασφαλείας, οι εγγραφές κλείνουν έπειτα από μόνες τους: οι περισσότεροι εγκαθιστούν το Firefly III μόνο για τον εαυτό τους.
/settings, ανοίξτε τις επιλογές διαμόρφωσης του Firefly III, αποεπιλέξτε την επιλογή που απενεργοποιεί τις εγγραφές και αποθηκεύστε.AUTHENTICATION_GUARD=remote_user_guard, το Firefly III εμπιστεύεται έναν proxy ελέγχου ταυτότητας τοποθετημένο μπροστά, όπως το Authelia ή το Authentik, που μεταβιβάζει τον χρήστη σε μια κεφαλίδα.Αρκετές λειτουργίες δουλεύουν μόνο με μια προγραμματισμένη εργασία: οι αυτόματοι προϋπολογισμοί, οι επαναλαμβανόμενες συναλλαγές, οι ειδοποιήσεις συνδρομών και οι ενημερωμένες συναλλαγματικές ισοτιμίες. Η εικόνα Docker δεν τρέχει μόνη της το cron· το επίσημο αρχείο προσθέτει γι’ αυτό μια μικρή υπηρεσία cron, που καλεί την εφαρμογή κάθε ημέρα στις 3 το πρωί.
Ταυτοποιείται με ένα στατικό token. Δημιουργήστε μια τρίτη συμβολοσειρά με την ίδια εντολή, και τοποθετήστε την στο .env:
STATIC_CRON_TOKEN=
Το token αυτό έχει μήκος ακριβώς 32 χαρακτήρων: ο κώδικας της έκδοσης 6.7.9 δεν δέχεται άλλο μήκος. Ακολουθεί η υπηρεσία όπως τη δηλώνει το επίσημο αρχείο· το διπλό $$ είναι σκόπιμο και παραπέμπει στις γραμμές TZ και STATIC_CRON_TOKEN του αρχείου .env:
cron:
image: alpine
restart: always
container_name: firefly_iii_cron
env_file: .env
init: true
command: ["sh", "-c", "apk add tzdata && \
(ln -s /usr/share/zoneinfo/$$TZ /etc/localtime || true) && \
echo \"0 3 * * * wget -qO- http://app:8080/api/v1/cron/$$STATIC_CRON_TOKEN;echo\" \
| crontab - && \
exec crond -f -L /dev/stdout"]
networks:
- firefly_iii
depends_on:
- app
Μία εργασία αρκεί για όλους τους χρήστες του στιγμιοτύπου. Για να ελέγξετε ότι έτρεξε, διαβάστε το αρχείο καταγραφής του κοντέινερ: κάθε εργασία αναφέρει το αποτέλεσμά της σε JSON, με job_fired και job_succeeded.
docker logs firefly_iii_cron
Για να την τρέξετε με το χέρι, οι συχνές ερωτήσεις Docker ζητούν να περνάτε από τον χρήστη www-data και όχι από τον root: συνδέουν αυτή την παγίδα με σφάλματα δικαιωμάτων στα αρχεία καταγραφής:
docker exec --user www-data firefly_iii_core /usr/local/bin/php /var/www/html/artisan firefly-iii:cron --force
Το επίσημο αρχείο παρέχει τη MariaDB, με την εικόνα mariadb:lts. Το Firefly III υποστηρίζει επίσης την PostgreSQL και την SQLite, που επιλέγονται με το DB_CONNECTION στο .env:
| Βάση | Εγκατάσταση | Αντίγραφο ασφαλείας |
|---|---|---|
| MariaDB ή MySQL | Η υπηρεσία db του επίσημου αρχείου· DB_CONNECTION=mysql, θύρα 3306 | Μια εξαγωγή με mariadb-dump, ή ο τόμος της βάσης με την υπηρεσία σταματημένη |
| PostgreSQL | DB_CONNECTION=pgsql, θύρα 5432, η εικόνα postgres και οι μεταβλητές POSTGRES_* στο .db.env | Μια εξαγωγή με pg_dump, ή ο τόμος της βάσης με την υπηρεσία σταματημένη |
| SQLite | DB_CONNECTION=sqlite, χωρίς υπηρεσία db, και ένας τόμος προσαρτημένος στο /var/www/html/storage/database | Ο τόμος της βάσης, με την υπηρεσία σταματημένη |
DB_CONNECTION=pgsql
DB_HOST=db
DB_PORT=5432
Για την PostgreSQL, η τεκμηρίωση στρέφει επίσης την υπηρεσία db στην εικόνα postgres, που εγκαθιστά την PostgreSQL 18, και προσαρτά τον τόμο της στο /var/lib/postgresql. Στο .db.env, οι μεταβλητές MYSQL_* γίνονται POSTGRES_USER, POSTGRES_DB και POSTGRES_PASSWORD.
Κάντε αυτή την επιλογή πριν καταχωρίσετε τις πρώτες σας συναλλαγές. Οι συχνές ερωτήσεις αναφέρουν ότι η μετάβαση από μια βάση σε άλλη παραμένει δυνατή, χωρίς να υποστηρίζεται από το ίδιο το Firefly III, και ότι η εξαγωγή της εφαρμογής δεν μεταφέρει όλα τα δεδομένα.
Το Firefly III Data Importer είναι ξεχωριστό εργαλείο, με δική του εγκατάσταση και δικές του ενημερώσεις· η έκδοσή του 2.3.5 κυκλοφόρησε στις 23 Σεπτεμβρίου 2026. Εισάγει αρχεία CSV και CAMT.053, και μπορεί επίσης να ανακτά συναλλαγές από τις τράπεζές σας μέσω τρίτων παρόχων δεδομένων, ο καθένας με τους δικούς του όρους.
Το επίσημο αποθετήριο Docker το παρέχει σε ένα δεύτερο αρχείο, το docker-compose-importer.yml, που κρατά τις ίδιες υπηρεσίες και προσθέτει την importer. Οι ρυθμίσεις του μπαίνουν σε ένα αρχείο .importer.env, παρμένο από το .env.example του εργαλείου εισαγωγής. Σερβίρετέ το σε δικό του όνομα τομέα, με μια θύρα δημοσιευμένη τοπικά και ένα δεύτερο μπλοκ proxy: οι συχνές ερωτήσεις ζητούν να μην το τοποθετείτε σε υποφάκελο.
FIREFLY_III_URL=http://app:8080
VANITY_URL=https://finances.example.com
TRUSTED_PROXIES=*
FIREFLY_III_URL: η εσωτερική διεύθυνση της εφαρμογής, στην οποία φτάνει το εργαλείο εισαγωγής μέσω του δικτύου Docker.VANITY_URL: η δημόσια διεύθυνση του Firefly III, αυτή που γνωρίζουν οι χρήστες σας./callback, και αποεπιλέξτε το «Confidential». Το εργαλείο εισαγωγής ζητά έπειτα το αναγνωριστικό του πελάτη.FIREFLY_III_ACCESS_TOKEN και κρατήστε το FIREFLY_III_URL· κάθε χρήστης συνδέεται τότε στο εργαλείο εισαγωγής με τον δικό του λογαριασμό.Εξ ορισμού, το MAIL_MAILER=log γράφει τα μηνύματα στα αρχεία καταγραφής αντί να τα στέλνει. Για να λαμβάνετε ειδοποιήσεις, όπως αυτές για τις συνδρομές, ρυθμίστε την αποστολή στο .env. Η τεκμηρίωση ζητά να αλλάζετε πάντα το MAIL_FROM και το SITE_OWNER, αλλιώς κανένα email δεν θα φύγει ποτέ.
Σε ένα VPS της Simafri, η αποστολή περνά από ένα πιστοποιημένο relay SMTP, στη θύρα 587: τη διεύθυνση ενός λογαριασμού email που έχετε ήδη, ή το Simafri Suite.
MAIL_MAILER=smtp
MAIL_HOST=smtp.example.com
MAIL_PORT=587
MAIL_FROM=finances@example.com
MAIL_USERNAME=finances@example.com
MAIL_PASSWORD=account_password
MAIL_ENCRYPTION=tls
MAIL_ENCRYPTION δέχεται null, ssl, starttls ή tls, ανάλογα με τον πάροχό σας· ο κώδικας της έκδοσης 6.7.9 επιστρέφει στο tls όταν η τιμή είναι κενή./settings/notifications στέλνει ένα δοκιμαστικό email, αφού δημιουργηθεί ξανά το κοντέινερ./slack.Το Firefly III δεν έχει ενσωματωμένη ρουτίνα αντιγράφων ασφαλείας: η τεκμηρίωση συνιστά τα εργαλεία του ίδιου του συστήματος, και επισημαίνει ότι η λειτουργία εξαγωγής της εφαρμογής δεν είναι αντίγραφο ασφαλείας. Με το Docker, αυτά είναι όσα κρατάτε:
| Στοιχείο | Τι κρατά | Για αντίγραφο ασφαλείας |
|---|---|---|
Η βάση (firefly_iii_db) | Λογαριασμοί, συναλλαγές, προϋπολογισμοί, κανόνες και χρήστες | Υποχρεωτικό |
Τα συνημμένα (firefly_iii_upload) | Τα αρχεία που επισυνάπτονται στις συναλλαγές | Υποχρεωτικό |
.env | Οι ρυθμίσεις, και πάνω απ’ όλα το APP_KEY | Υποχρεωτικό, κρυπτογραφημένο |
.db.env | Τα στοιχεία πρόσβασης στη βάση | Υποχρεωτικό, κρυπτογραφημένο |
docker-compose.yml και .importer.env | Η δική σας εκδοχή των επίσημων αρχείων | Συνιστάται |
Με MariaDB, το mariadb-dump εξάγει τη βάση χωρίς να σταματήσει η υπηρεσία· η επιλογή του --single-transaction δίνει ένα συνεπές αντίγραφο των πινάκων InnoDB χωρίς να τους κλειδώνει. Εκτελεσμένη από τον φάκελο του αρχείου Compose, η εντολή διαβάζει τα στοιχεία πρόσβασης από το περιβάλλον του κοντέινερ:
docker exec firefly_iii_db sh -c 'mariadb-dump --single-transaction -u"$MYSQL_USER" -p"$MYSQL_PASSWORD" "$MYSQL_DATABASE"' > firefly-$(date +%F).sql
Με PostgreSQL, η ίδια ιδέα περνά από το pg_dump:
docker exec firefly_iii_db sh -c 'pg_dump -U "$POSTGRES_USER" "$POSTGRES_DB"' > firefly-$(date +%F).sql
Προγραμματίστε αυτή την εξαγωγή στον διακομιστή τουλάχιστον μία φορά την ημέρα, και κάντε διαλογή ανάμεσα στα αρχεία, που συσσωρεύονται.
Η τεκμηρίωση αρχειοθετεί κάθε τόμο με ένα κοντέινερ μιας χρήσης. Το Docker Compose βάζει μπροστά στα ονόματα των τόμων το όνομα του έργου, που είναι εξ ορισμού το όνομα του φακέλου: ελέγξτε τα ακριβή ονόματα πριν τρέξετε την αρχειοθέτηση.
docker volume ls
docker compose stop
docker run --rm -v "firefly-iii_firefly_iii_db:/tmp" -v "$HOME/backups/firefly:/backup" \
ubuntu tar -czvf /backup/firefly_db.tar /tmp
docker run --rm -v "firefly-iii_firefly_iii_upload:/tmp" -v "$HOME/backups/firefly:/backup" \
ubuntu tar -czvf /backup/firefly_upload.tar /tmp
docker compose start
Ένα λάθος γραμμένο όνομα τόμου δεν προκαλεί κανένα σφάλμα: το Docker δημιουργεί έναν κενό τόμο με αυτό το όνομα και τον αρχειοθετεί, πράγμα που αντικαθιστά το προηγούμενο αντίγραφο. Η τεκμηρίωση ζητά να ελέγχετε ότι ο τόμος υπάρχει πριν από κάθε αρχειοθέτηση.
Κρατήστε ένα αντίγραφο του .env και αυτών των αρχείων εκτός του διακομιστή, κρυπτογραφημένο, αφού περιέχει το κλειδί και τα στοιχεία πρόσβασης στη βάση. Αποθηκευμένα στον δίσκο του διακομιστή, τα αρχεία αυτά μπαίνουν και στα νυχτερινά αντίγραφα ασφαλείας του.
Η τεκμηρίωση επαναφέρει έναν τόμο με την αντίστροφη εντολή, με την υπηρεσία σταματημένη· ο τόμος των συνημμένων επαναφέρεται με τον ίδιο τρόπο:
docker run --rm -v "firefly-iii_firefly_iii_db:/recover" -v "$HOME/backups/firefly:/backup" \
ubuntu tar -xvf /backup/firefly_db.tar -C /recover --strip 1
Μια εξαγωγή SQL φορτώνεται ξανά στη βάση σε λειτουργία:
docker exec -i firefly_iii_db sh -c 'mariadb -u"$MYSQL_USER" -p"$MYSQL_PASSWORD" "$MYSQL_DATABASE"' < firefly-YYYY-MM-DD.sql
Επαναφέρετε επίσης το .env με το APP_KEY του, και έπειτα ξεκινήστε ξανά και ανοίξτε τους λογαριασμούς σας. Η τεκμηρίωση το επαναλαμβάνει μετά από κάθε μέθοδο: το πρώτο που κάνετε με ένα αντίγραφο ασφαλείας είναι να το επαναφέρετε, για να βεβαιωθείτε ότι λειτουργεί.
Το Firefly III αναβαθμίζεται μόνο του, ακόμη και από εκδόσεις τόσο παλιές όσο η 4.7, και μεταπτώνει τη βάση του όταν ξεκινά το κοντέινερ. Η τεκμηρίωση προειδοποιεί ότι ορισμένες αναβαθμίσεις αφαιρούν ή καθαρίζουν δεδομένα, και ζητά αντίγραφο ασφαλείας της βάσης και των τόμων πριν από καθεμία, ιδίως ανάμεσα σε κύριες εκδόσεις. Από τον φάκελο του αρχείου Compose:
docker compose stop
docker compose pull
docker compose -f docker-compose.yml up -d --remove-orphans
/settings.php artisan correction:rollback-single-migration αφαιρεί την τελευταία εγγραφή μετάπτωσης χωρίς να αγγίξει τα δεδομένα, και έπειτα το php artisan migrate την εκτελεί ξανά, μέσα στο κοντέινερ.Το εργαλείο εισαγωγής ενημερώνεται με τον ίδιο τρόπο, με ένα docker compose rm -f ανάμεσα στη διακοπή και στη λήψη των εικόνων, σύμφωνα με την τεκμηρίωσή του.
Το self-hosting απαιτεί να φροντίζετε τον διακομιστή εκτός από την εφαρμογή. Σε ένα Managed VPS, οι ομάδες μας αναλαμβάνουν τον διακομιστή και παρακολουθούν προληπτικά το στιγμιότυπό σας· το Firefly III μένει δικό σας λογισμικό, με τις ρυθμίσεις του και τα οικονομικά σας δεδομένα.
| Θέμα | Οι ομάδες μας | Εσείς |
|---|---|---|
| Ο διακομιστής | Ενημερώσεις του συστήματος και της ασφάλειας, μαζί με τις παρεμβάσεις στον διακομιστή | Η στιγμή που ταιριάζει στη δραστηριότητά σας |
| Η επιτήρηση | Διακομιστής υπό παρακολούθηση 24 ώρες την ημέρα, 7 ημέρες την εβδομάδα, με παρέμβαση χωρίς να περιμένουμε την κλήση σας | Η ανάγνωση των αρχείων καταγραφής του στιγμιοτύπου σας |
| Firefly III | Προληπτική παρακολούθηση: εντοπισμός σφαλμάτων, καθυστερήσεων, της εργασίας cron και του χώρου στον δίσκο, με πρόταση διόρθωσης | Η εγκατάσταση, οι ενημερώσεις και οι ρυθμίσεις του, που εφαρμόζετε εσείς ή ο βοηθός AI σας |
| Οι λογαριασμοί και τα δεδομένα | Ο διακομιστής που τα φιλοξενεί, υπό επιτήρηση και με αντίγραφα ασφαλείας | Οι χρήστες, ο έλεγχος ταυτότητας δύο παραγόντων, το εργαλείο εισαγωγής δεδομένων και οι πάροχοι δεδομένων του |
| Τα αντίγραφα ασφαλείας | Κάθε νύχτα, κρυπτογραφημένα και φυλαγμένα εκτός του μηχανήματος· η επαναφορά περιλαμβάνεται | Οι εξαγωγές που αφορούν το ίδιο το Firefly III, και το αίτημα επαναφοράς, όταν το χρειαστείτε |
| Η μετάπτωση | Μετάπτωση του τρέχοντος διακομιστή σας, δωρεάν | Η στιγμή της μετάβασης |
Αν προτιμάτε να παρεμβαίνουν οι ομάδες μας μέσα στην ίδια την εφαρμογή, η υπηρεσία αυτή χρεώνεται ανά ώρα ή κατ’ αποκοπή, με κοστολόγηση που σας ανακοινώνεται πριν από την παρέμβαση.
Με ένα Managed VPS της Simafri, οι ομάδες μας κρατούν ενημερωμένο τον διακομιστή του στιγμιοτύπου σας Firefly III, τον παρακολουθούν μέρα και νύχτα και παρεμβαίνουν χωρίς να περιμένουν την κλήση σας· παρακολουθούν επίσης προληπτικά το στιγμιότυπό σας και σας προτείνουν τις χρήσιμες διορθώσεις, που εφαρμόζετε εσείς ή ο βοηθός AI σας. Τα αντίγραφα ασφαλείας κρυπτογραφούνται κάθε νύχτα και φυλάσσονται εκτός του μηχανήματος, η επαναφορά τους περιλαμβάνεται, και η μετάπτωση από τον τρέχοντα διακομιστή σας είναι δωρεάν.
Ναι. Το Firefly III έχει άδεια AGPL-3.0-or-later: μπορείτε να το τρέχετε για εσάς, την οικογένειά σας ή την επιχείρησή σας χωρίς να αγοράσετε άδεια. Αν το τροποποιήσετε, η έκδοσή σας πρέπει να προσφέρει τον πηγαίο κώδικά της σε όσους τη χρησιμοποιούν μέσω δικτύου. Μένει το κόστος του διακομιστή που το τρέχει.
Κατεβάστε τα τρία επίσημα αρχεία, docker-compose.yml, .env και .db.env. Ορίστε ένα APP_KEY 32 χαρακτήρων και τον ίδιο κωδικό πρόσβασης στα DB_PASSWORD και MYSQL_PASSWORD, πριν από την πρώτη εκκίνηση, και έπειτα εκτελέστε docker compose up -d. Στη συνέχεια, τοποθετήστε μπροστά έναν reverse proxy σε HTTPS.
Το APP_KEY είναι το κλειδί κρυπτογράφησης των συνεδριών. Έχει μήκος ακριβώς 32 χαρακτήρων, χωρίς ειδικούς χαρακτήρες όπως = ή #, και μένει μυστικό. Η τεκμηρίωση ζητά να το κρατάτε σε αντίγραφο μαζί με τους τόμους: είναι μέρος όσων χρειάζεστε για να επαναφέρετε ένα στιγμιότυπο.
Οι συχνές ερωτήσεις Docker εξηγούν ότι λείπει το TRUSTED_PROXIES=* από το αρχείο .env: χωρίς αυτό, το Firefly III αγνοεί την κεφαλίδα X-Forwarded-Proto του proxy, οι σύνδεσμοι μένουν σε http και οι φόρμες και τα γραφήματα σταματούν να λειτουργούν. Δηλώστε επίσης τη δημόσια διεύθυνσή σας στο APP_URL.
Το επίσημο αρχείο Compose περιλαμβάνει μια υπηρεσία cron που καλεί την εφαρμογή κάθε ημέρα στις 3 το πρωί. Ορίστε ένα STATIC_CRON_TOKEN ακριβώς 32 χαρακτήρων στο .env, και έπειτα επανεκκινήστε τις υπηρεσίες. Μία εργασία εξυπηρετεί όλους τους χρήστες του στιγμιοτύπου.
Ο πρώτος χρήστης που εγγράφεται γίνεται ο ιδιοκτήτης, και οι εγγραφές κλείνουν στη συνέχεια. Ο ιδιοκτήτης τις ανοίγει ξανά στο /settings, στις επιλογές διαμόρφωσης του Firefly III. Κάθε χρήστης κρατά έπειτα μια οικονομική διαχείριση διαχωρισμένη από τις άλλες.
Κρατήστε αντίγραφο της βάσης, με μια εξαγωγή mariadb-dump ή pg_dump, του τόμου των συνημμένων, και των αρχείων .env και .db.env, κρυπτογραφημένων. Η λειτουργία εξαγωγής της εφαρμογής δεν είναι αντίγραφο ασφαλείας. Δοκιμάστε την επαναφορά αμέσως μετά το πρώτο αντίγραφο.
Ένα Managed VPS καλύπτει τον διακομιστή: σύστημα, ασφάλεια, επιτήρηση και αντίγραφα ασφαλείας. Οι ομάδες μας παρακολουθούν επίσης προληπτικά το στιγμιότυπό σας και σας προτείνουν τις χρήσιμες διορθώσεις, που εφαρμόζετε εσείς. Μια παρέμβαση μέσα στην εφαρμογή χρεώνεται ανά ώρα ή κατ’ αποκοπή.
Simafri
Ας μιλήσουμε για την ιστοσελίδα σας
Πείτε μας με λίγα λόγια για το έργο σας: θα επικοινωνήσουμε σύντομα μαζί σας.
Ευχαριστούμε! Το αίτημά σας εστάλη. Θα επικοινωνήσουμε σύντομα μαζί σας.
Προτιμάτε email; Γράψτε μας στο support@simafri.com.