📋 File requirements.txt per Python
Il filerequirements.txt è lo standard di settore per specificare e gestire le dipendenze nei progetti Python. Questa guida mostra come creare, configurare e usare requirements.txt per garantire coerenza tra gli ambienti di sviluppo e di produzione.
Che cos’è un file requirements.txt?
Un filerequirements.txt elenca tutti i pacchetti Python esterni di cui il tuo progetto ha bisogno, con le loro versioni specifiche. Questo permette:
- A te e al tuo team di mantenere ambienti identici
- Ai nuovi collaboratori di riprodurre esattamente l’ambiente
- Al deploy su Square Cloud di funzionare con le dipendenze corrette
Attiva l'ambiente virtuale
Lavorare all’interno di un ambiente virtuale è essenziale per mantenere le dipendenze del tuo progetto isolate dal sistema Python globale. Questo evita conflitti di versione e garantisce la riproducibilità.Attiva il tuo ambiente virtuale con uno dei comandi seguenti, a seconda del tuo sistema:Windows:macOS/Linux:
Elenca le dipendenze del progetto
Opzione A: Creazione manuale (Consigliata)
Crea un filerequirements.txt nella radice del tuo progetto ed elenca tutti i pacchetti esterni con le loro versioni:requirements.txt
Opzione B: Generazione automatica con pip freeze
Dopo aver installato le dipendenze nel tuo ambiente virtuale, puoi generare automaticamente il file. Ci sono due modi principali:Opzione B1: Usapip freeze (include tutto)pipdeptree o pip freeze con filtro (Consigliata)Per catturare SOLO le dipendenze del tuo progetto (senza i pacchetti ausiliari dell’ambiente), usa:pipdeptree:Se stai lavorando in un ambiente virtuale (consigliato),
pip freeze funzionerà perfettamente poiché l’ambiente sarà isolato e conterrà solo le dipendenze del tuo progetto.Rivedi e valida le dipendenze
Apri il file
requirements.txt nel tuo editor di testo e:- Rivedi l’elenco dei pacchetti
- Rimuovi le dipendenze non necessarie
- Aggiorna le versioni se necessario
- Assicurati di usare versioni esatte (con
==)
Installa le dipendenze
Per installare tutte le dipendenze elencate:Questo comando garantisce che tutti i collaboratori e gli ambienti di produzione usino esattamente le stesse versioni.
Versiona e condividi
Con
requirements.txt pronto, puoi:- Condividerlo con il tuo team
- Metterlo sotto controllo di versione (git)
- Assicurarti che tutti lavorino con le stesse versioni
- Semplificare il deploy su Square Cloud
requirements.txt viene rilevato automaticamente e tutte le dipendenze vengono installate durante la build.💡 Buone pratiche e consigli:
- Mantieni aggiornato: Rivedi e aggiorna regolarmente
requirements.txtman mano che aggiungi nuove dipendenze - Usa versioni esatte: Usa sempre
==invece di>,>=o nessuna versione per evitare sorprese in produzione - Rivedi pip freeze: Se usi
pip freeze, rivedi il file prima del commit, poiché potrebbe includere pacchetti ausiliari non necessari - Versionamento: Effettua il commit di
requirements.txtsu git per tracciare le modifiche alle dipendenze - Ambiente isolato: Mantieni un ambiente virtuale per progetto per evitare conflitti globali
- Prova in locale: Prima del deploy, testa il file con
pip install -r requirements.txtin un nuovo ambiente
🚀 Prossimi passi
Con il tuo filerequirements.txt configurato:
- Effettua il commit sul tuo repository Git.
- Ospita il tuo progetto su Square Cloud.
- Configura il deploy automatico tramite GitHub.
- Benvenuto nell’hosting professionale di applicazioni Python!
requirements.txt ben strutturato è la base per qualsiasi applicazione Python di successo, garantendo che la tua applicazione funzioni perfettamente su Square Cloud.
