Struttura del corso
Introduzione
- Introduzione ai concetti e ai flussi di lavoro Docker avanzati
- Ripasso dei principi di containerizzazione e casi d'uso
- Terminologia Docker e componenti fondamentali
- Panoramica sugli obiettivi del corso e sull'ambiente pratico
Panoramica delle Funzionalità e dell'Architettura Docker
- Engine Docker e i suoi componenti
- Client, daemon, immagini, contenitori e registry Docker
- Architettura Docker e ciclo di vita dei contenitori
- Docker Hub e registry privati
- Fondamenti della CLI Docker per utenti avanzati
- Gestione delle risorse e delle configurazioni Docker
Configurazione di Docker
- Installazione di Docker Community Edition
- Configurazione dell'ambiente Docker
- Verifica dell'installazione Docker
- Configurazione di Docker per sviluppo e test
- Gestione delle configurazioni e dello storage Docker
- Introduzione alla risoluzione dei problemi dell'ambiente Docker
Creazione di Proprie Immagini Docker
- Comprensione delle immagini e dei layer Docker
- Scrittura di Dockerfile efficaci
- Istruzioni del Dockerfile e migliori pratiche
- Gestione del contesto di build
- Costruzione e tagging delle immagini
- Utilizzo di
.dockerignore - Ottimizzazione della dimensione delle immagini e delle prestazioni di build
- Gestione delle versioni e dei tag delle immagini
- Build multi-stage con Docker
- Pubblicazione delle immagini in un registro dei contenitori
Esecuzione di Applicazioni Docker Multi-Contenitore con Docker Compose
- Introduzione a Docker Compose
- Definizione dei servizi con file Compose
- Configurazione di reti e volumi
- Gestione delle variabili d'ambiente
- Dipendenze tra servizi e ordine di avvio
- Esecuzione e scalatura di più servizi
- Costruzione di immagini applicative con Compose
- Gestione della configurazione delle applicazioni
- Debug di applicazioni multi-contenitore
- Migliori pratiche di Compose
Le Sfide della Distribuzione di Molte Applicazioni Docker
- Gestione dei contenitori su più host
- Scalabilità e disponibilità delle applicazioni
- Scoperta dei servizi
- Bilanciamento del carico
- Gestione delle configurazioni e dei segreti
- Sfide dello storage persistente
- Monitoraggio e logging su larga scala
- Aggiornamenti incrementali (rolling updates) e distribuzione delle applicazioni
- Ripristino in caso di guasti di contenitori e host
Come l'Orchestrazione dei Contenitori Aiuta a Mantenere il Controllo
- Introduzione all'orchestrazione dei contenitori
- Vantaggi e limiti dell'orchestrazione
- Confronto tra Docker Swarm, Kubernetes e altre soluzioni
- Pianificazione e gestione dei carichi di lavoro
- Scoperta dei servizi e rete
- Scalabilità e auto-riparazione delle applicazioni
- Distribuzioni rolling e rollback
- Gestione delle risorse e isolamento dei carichi di lavoro
- Selezione della piattaforma di orchestrazione appropriata
Kubernetes in Pratica
- Architettura di Kubernetes e componenti fondamentali
- Pod, nodi e cluster
- Deployment e ReplicaSet
- Servizi e scoperta dei servizi
- ConfigMaps e Secrets
- Namespaces e organizzazione delle risorse
- Scalabilità delle applicazioni
- Aggiornamenti rolling e rollback
- Fondamenti di rete Kubernetes
- Storage persistente
- Health check e resilienza delle applicazioni
- Distribuzione di applicazioni Docker su Kubernetes
- Risoluzione dei problemi dei carichi di lavoro Kubernetes
Reti Docker Avanzate
- Architettura di rete Docker
- Driver di rete bridge, host, overlay e altri
- Comunicazione contenitore-contenitore
- Comunicazione tra contenitori e sistemi esterni
- Reti Docker personalizzate
- Isolamento di rete
- Scoperta dei servizi
- Pubblicazione ed esposizione delle porte
- Reti in ambienti multi-host
- Risoluzione dei problemi delle reti Docker
Sicurezza di Docker
- Fondamenti della sicurezza Docker
- Isolamento dei contenitori e confini di sicurezza
- Esecuzione dei contenitori con privilegi appropriati
- Gestione di utenti e permessi all'interno dei contenitori
- Capabilities Linux e controlli di sicurezza
- Sicurezza delle immagini Docker
- Scansione delle vulnerabilità delle immagini
- Gestione sicura dei segreti
- Sicurezza dei registry Docker
- Sicurezza e isolamento di rete
- Sicurezza del daemon Docker
- Migliori pratiche per la sicurezza dei contenitori
Impostazione di un Flusso di Integrazione Continua per le Applicazioni Docker
- Introduzione all'integrazione continua (CI) per le applicazioni containerizzate
- Creazione automatica delle immagini Docker
- Test automatizzati di immagini e contenitori Docker
- Tagging e gestione delle versioni delle immagini
- Integrazione del controllo delle versioni con le build Docker
- Scansione automatizzata delle vulnerabilità delle immagini
- Pubblicazione delle immagini nei registry
- Gestione degli artefatti di build
- Implementazione di controlli di qualità automatizzati
- Progettazione di un pipeline CI Docker ripetibile
Integrazione delle Applicazioni Docker in un Flusso di Lavoro Esistente
- Integrazione di Docker nei flussi di sviluppo esistenti
- Containerizzazione delle applicazioni esistenti
- Integrazione di Docker con piattaforme CI/CD
- Gestione degli ambienti di sviluppo, test, staging e produzione
- Strategie di distribuzione automatizzate
- Gestione delle configurazioni tra gli ambienti
- Integrazione con i registry
- Approvazioni della distribuzione e gestione dei rilasci
- Monitoraggio delle distribuzioni delle applicazioni
- Mantenimento della coerenza tra gli ambienti
Migliori Pratiche per Contenitori e Orchestrazione
- Progettazione di immagini Docker manutenibili
- Ottimizzazione dell'avvio e delle prestazioni dei contenitori
- Gestione del ciclo di vita dei contenitori
- Allocazione efficace delle risorse
- Strategie di logging e monitoraggio
- Gestione delle configurazioni e dei segreti
- Alta disponibilità e tolleranza ai guasti
- Scalabilità delle applicazioni containerizzate
- Distribuzione sicura dei contenitori
- Strategie di versioning e rilascio
- Migliori pratiche per l'architettura di orchestrazione
Risoluzione dei Problemi
- Diagnosi dei fallimenti di avvio dei contenitori
- Analisi dei log delle applicazioni e dei contenitori
- Ispettione di contenitori e immagini
- Risoluzione dei problemi di rete
- Risoluzione dei problemi di storage e volumi
- Diagnosi dei fallimenti delle build delle immagini
- Risoluzione dei problemi delle applicazioni Docker Compose
- Indagine su problemi di risorse e prestazioni
- Fondamenti per la risoluzione dei problemi in Kubernetes
- Esercizi pratici di troubleshooting
Riepilogo e Conclusione
- Ripasso dei concetti chiave di Docker
- Ripasso della creazione delle immagini e della gestione dei contenitori
- Ripasso della distribuzione di applicazioni multi-contenitore
- Ripasso dei concetti di orchestrazione e Kubernetes
- Ripasso delle reti e della sicurezza di Docker
- Ripasso dell'integrazione CI/CD
- Migliori pratiche di containerizzazione e orchestrazione
- Esercizio pratico finale
- Domande e discussione
Requisiti
- Esperienza pregressa nel lavoro con i contenitori Docker.
Pubblico Target
- Sviluppatori
- Ingegneri DevOps
- Amministratori di sistema
Recensioni (7)
La vasta conoscenza del formatore e la sua capacità di risolvere i problemi che si sono presentati spontaneamente durante le sessioni pratiche. Inoltre, gli esercizi stessi sono adeguati per aiutare a consolidare gli argomenti trattati nel corso.
Cosmin - Ness Digital Engineering
Corso - Advanced Docker
Traduzione automatica
Il ritmo e il fatto che siamo entrati subito nei dettagli mi sono piaciuti molto, ma penso che avremmo potuto approfondire ancora di più fin dal primo giorno (considerando che si tratta di un corso avanzato su Docker, supponiamo che ci sia già una conoscenza di base del tool).
SORIN ROMAN - Ness Digital Engineering
Corso - Advanced Docker
Traduzione automatica
il formatore è una persona molto simpatica e ha spiegato tutto molto bene, in modo strutturato e coerente. gli esercizi di pratica erano interessanti
Andreas - Ness Digital Engineering
Corso - Advanced Docker
Traduzione automatica
Il corso di formazione ha mantenuto un buon ritmo, adattato all'esperienza di ogni partecipante. Inoltre, presenta un equilibrio piacevole tra nozioni teoriche ed esercizi pratici.
Laurentiu - Ness Digital Engineering
Corso - Advanced Docker
Traduzione automatica
La struttura e il modo in cui è stata presentata. Per me, questo training è stato come un viaggio: dall'app alle Docker container, fino a Kubernetes. Gli esercizi erano stimolanti e pertinenti.
Andrei - Ness Digital Engineering
Corso - Advanced Docker
Traduzione automatica
La spiegazione semplice e il fatto che il corso fosse didattico
Diana Martinez - AT&T
Corso - Advanced Docker
Traduzione automatica
L'instruttore è uno sviluppatore altamente esperto di Docker e gli piace condividere le sue esperienze con il gruppo. DaDesktop è una piattaforma molto piacevole su cui lavorare.
Ulises - AT&T
Corso - Advanced Docker
Traduzione automatica