🐳 Installazione (Utente)
Questa guida spiega come distribuire LibreFolio per l'uso regolare utilizzando Docker. Questo è il metodo consigliato per gli utenti che non intendono modificare il codice sorgente.
✅ Prerequisiti
- 🐍 Python 3.13+: Installa Python
- 📦 Node.js 20.19+: Installa Node.js (include npm)
- 📋 Pipenv:
pip install pipenv - 🐋 Docker: Installa Docker (include Docker Compose)
Gruppo Docker (Linux)
Su Linux, l'utente deve appartenere al gruppo docker per eseguire i comandi Docker senza sudo:
Successivamente, effettua il logout e accedi di nuovo, oppure esegui newgrp docker per attivare il gruppo nella sessione corrente.
Perché Python e Node.js?
LibreFolio utilizza un'immagine Docker solo per il runtime — il frontend e la documentazione vengono compilati sull'host prima di essere impacchettati nell'immagine Docker. Immagini pre-compilate su un registro di container sono previste per rilasci futuri.
📥 1. Scaricare il Progetto
Clona il repository:
Oppure scarica l'ultima release da GitHub Releases e scompattala.
⚙️ 2. Configurare l'Ambiente
- Copia il file di esempio (obbligatorio — la build si interromperà se manca il file
.env):
-
Modifica
.envper personalizzare: -
🔌
PORT: Cambia la porta se la8000è già in uso. - 💰
PORTFOLIO_BASE_CURRENCY: La tua valuta di base (default:EUR). - 📊
LOG_LEVEL: Verbosità dei log (default:INFO).
📦 3. Installare le Dipendenze
Questo installa le dipendenze Python (backend) e Node.js (frontend).
🏗️ 4. Build dell'Immagine Docker
Questo comando esegue automaticamente:
- La build del frontend (build di produzione SvelteKit)
- La build del sito di documentazione (MkDocs)
- Impacchetta tutti i componenti in un'unica immagine Docker taggata come
librefolio:latest
🚀 5. Avviare con Docker Compose
- 🔄
-davvia l'applicazione in modalità detached (in background).
🌐 6. Accedere a LibreFolio
Apri il browser e vai su:
http://localhost:8000
(Oppure usa la porta configurata in .env).
La prima volta che accedi a LibreFolio, ti verrà presentata una pagina di registrazione — crea il tuo account direttamente dal browser. Il primo utente registrato diventa automaticamente l'amministratore.
Endpoint disponibili:
- 🏠 Frontend:
http://localhost:8000/ - 📚 Documentazione Utente:
http://localhost:8000/mkdocs/
Gestione utenti via CLI
È possibile gestire gli utenti anche dalla riga di comando. Consulta il Manuale Amministratore — CLI Tools per i comandi relativi alla creazione, promozione e listatura degli utenti.
🔄 Aggiornare LibreFolio
Per aggiornare a una nuova versione:
- Recupera l'ultima versione del codice:
- Ricompila l'immagine Docker (ricompila automaticamente frontend e docs se modificati):
Questo comando crea una nuova immagine, ferma i container in esecuzione e li riavvia con la nuova versione.
- Le migrazioni del database vengono applicate automaticamente all'avvio.
🧪 Provare con Dati di Test (Opzionale)
Puoi avviare un server di test con dati mock pre-popolati per esplorare l'applicazione prima di inserire dati reali:
Accedi a http://localhost:8001 con l'utente e2e_test_user / E2eTestPass123!.
Il server di test gira parallelamente a quello di produzione, utilizzando un database separato. Consulta la Guida Avanzata Docker per i dettagli.
Argomenti avanzati
Per la configurazione del reverse proxy, i backup del database, i percorsi dati personalizzati e le considerazioni per la produzione, consulta la 🐳 Guida Avanzata Docker.