Puoi personalizzare l'ambiente di runtime del codice utente nelle pipeline Dataflow fornendo un'immagine container personalizzata. I contenitori personalizzati sono supportati per le pipeline che utilizzano Dataflow Runner v2.
Quando Dataflow avvia le VM worker, utilizza le immagini dei container Docker per avviare i processi SDK containerizzati sui worker. Per impostazione predefinita, una pipeline Apache Beam utilizza un'immagine precompilata. Tuttavia, puoi fornire un'immagine container personalizzata per il tuo job Dataflow. Quando specifichi un'immagine container personalizzata, Dataflow avvia i worker che eseguono il pull dell'immagine specificata.
Potresti utilizzare un contenitore personalizzato per i seguenti motivi:
- Preinstalla le dipendenze della pipeline per ridurre il tempo di inizio del worker.
- Preinstalla le dipendenze della pipeline che non sono disponibili nei repository pubblici.
- Preinstalla le dipendenze della pipeline quando l'accesso ai repository pubblici è disattivato. L'accesso potrebbe essere disattivato per motivi di sicurezza.
- Esegui il pre-trattamento dei file di grandi dimensioni per ridurre il tempo di inizio del worker.
- Avvia software di terze parti in background.
- Personalizza l'ambiente di esecuzione.
Per ulteriori informazioni sui container personalizzati in Apache Beam, consulta la guida ai container personalizzati di Apache Beam. Per esempi di pipeline Python che utilizzano container personalizzati, consulta Container personalizzati Dataflow.
Passaggi successivi
- Creare immagini container personalizzate
- Creare immagini container multi-architettura
- Eseguire un job Dataflow in un contenitore personalizzato
- Risolvere i problemi relativi ai container personalizzati