Passare la configurazione tramite variabili d'ambiente
Tenga i percorsi dei modelli e i secret fuori dall'immagine.
Passare la configurazione tramite variabili d'ambiente è una lezione MLOps Academy gratuita su CoddyKit. Questa è la lezione 3 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento MLOps Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso MLOps Academy include 4 lezioni in totale.
Non includere la configurazione nell'immagine
Inserire direttamente un percorso del modello o una chiave API significa incorporarli per sempre nell'immagine. Li passi invece come environment variables in fase di esecuzione.
Leggere le variabili d'ambiente in Python
Usi os.getenv per leggere una variabile, con un valore predefinito sensato. Il codice si adatta quindi a ogni ambiente senza modifiche.
import os
model_path = os.getenv("MODEL_PATH", "/models/latest.pkl")Valori predefiniti nell'immagine
L'istruzione ENV del Dockerfile imposta un valore predefinito incorporato. È utile per la configurazione non segreta che cambia raramente.
ENV MODEL_PATH=/models/latest.pklSovrascrivere in fase di esecuzione
Sovrascriva qualsiasi valore con -e durante docker run. La stessa immagine può così essere usata in staging o in produzione con impostazioni diverse.
docker run -e MODEL_PATH=/models/v2.pkl model-apiRaggruppare le variabili in un file
Mantenga ordinate molte variabili in un file e lo carichi con --env-file. Il comando di avvio rimane breve e leggibile.
docker run --env-file prod.env model-apiNon eseguire mai il commit dei segreti
Tenga i file con i segreti fuori da Git e dall'immagine. Aggiunga .env a .gitignore e .dockerignore, così non potranno mai essere esposti.
I segreti restano all'esterno
I veri secrets, come le password del database, dovrebbero provenire da un vault o dal gestore dei segreti della piattaforma, ed essere iniettati solo in fase di esecuzione.
Convalidare all'avvio
Controlli le variabili obbligatorie quando l'applicazione si avvia e interrompa esplicitamente l'esecuzione se ne manca una. Un arresto chiaro è preferibile a una previsione errata e silenziosa.
if not os.getenv("MODEL_PATH"):
raise RuntimeError("MODEL_PATH is required")Configurazione Twelve-Factor
La regola twelve-factor stabilisce di memorizzare la configurazione nell'ambiente. In questo modo una sola immagine rimane portabile su ogni destinazione di deployment.
Impostazioni Pydantic
Strumenti come pydantic-settings leggono le variabili d'ambiente in un oggetto di configurazione tipizzato, convalidando tipi e valori predefiniti in un unico punto ordinato.
from pydantic_settings import BaseSettingsUn'immagine, molti ambienti
Il vantaggio è questo: esegua il build once e avvii la stessa identica immagine in sviluppo, staging e produzione, modificando solo le variabili iniettate.
Verifica rapida
Verifichiamo dove dovrebbe risiedere la configurazione.
Riepilogo
Ha letto la configurazione con os.getenv, impostato valori predefiniti tramite ENV, sovrascritto i valori con -e e --env-file e tenuto i segreti all'esterno. Un'immagine portabile. ✅
Domande Frequenti
La lezione «Passare la configurazione tramite variabili d'ambiente» è gratuita?
Sì — il testo completo di «Passare la configurazione tramite variabili d'ambiente» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso MLOps Academy, passa a CoddyKit PRO. Il corso MLOps Academy include 4 lezioni in totale.
Cosa imparerò in «Passare la configurazione tramite variabili d'ambiente»?
Tenga i percorsi dei modelli e i secret fuori dall'immagine. Eserciti MLOps Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare MLOps Academy?
Non è richiesta alcuna esperienza precedente. MLOps Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 3 di 4.
Quanto tempo richiede la lezione «Passare la configurazione tramite variabili d'ambiente»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione MLOps Academy?
Sì. Ogni lezione MLOps Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Scrivere un Dockerfile per una model API
- Alleggerire le immagini con build multi-stage
- Passare la configurazione tramite variabili d'ambiente
- Eseguire e testare il container in locale