Riepilogo

In questo post abbiamo trattato un'introduzione ai contenitori docker e spiegato il concetto di containerizzazione attraverso l'illustrazione dei concetti e un esempio pratico. abbiamo anche trattato la configurazione, la creazione e l'esecuzione dei contenitori docker e spiegato il concetto di eseguire più contenitori docker insieme tramite docker-compose.

Questo post copre le risposte per Introduzione a Docker E Introduzione alla containerizzazione stanza in TryHackMe.

Cos'è la containerizzazione

In termini informatici, la containerizzazione è il processo di confezionamento di un'applicazione e delle risorse necessarie (come librerie e pacchetti) in un unico pacchetto denominato contenitore. Il processo di confezionamento delle applicazioni rende le applicazioni notevolmente portabili e facili da eseguire.

Le applicazioni moderne sono spesso complesse e in genere dipendono dall'installazione di framework e librerie su un dispositivo prima che l'applicazione possa essere eseguita. Queste dipendenze possono:

  • Essere difficili da installare a seconda dell'ambiente in cui è in esecuzione l'applicazione (alcuni sistemi operativi potrebbero non supportarli nemmeno!)
  • Crea difficoltà per gli sviluppatori nel diagnosticare e replicare gli errori, poiché potrebbe trattarsi di un problema con l'ambiente dell'applicazione, non con l'applicazione stessa!
  • Spesso possono entrare in conflitto tra loro. Ad esempio, avere più versioni di Python per eseguire applicazioni diverse è un grattacapo per l'utente e un'applicazione potrebbe funzionare con una versione di Python e non con un'altra.

Ottieni le note sul certificato OSCP

Cosa sono i contenitori Docker?

Docker è una piattaforma di containerizzazione relativamente semplice, estesa e open source. L'ecosistema Docker consente alle applicazioni (immagini: ne parleremo in una stanza successiva) di essere distribuite, gestite e condivise con facilità.

Lavorando su Linux, Windows e MacOS, Docker è una scelta intelligente per l'esecuzione delle applicazioni. Le applicazioni possono essere pubblicate come "immagini" e condivise con altri. Tutto ciò che serve è estrarre (scaricare) l'immagine ed eseguirla con Docker.

Docker utilizza la stessa tecnologia utilizzata nella containerizzazione per isolare le applicazioni in contenitori chiamati Docker Engine. Il Docker Engine è essenzialmente un'API che viene eseguita sul sistema operativo host, che comunica tra il sistema operativo e i contenitori per accedere all'hardware del sistema (come CPU, RAM, rete e disco)

Per questo motivo, il motore Docker è ampio e ti consente di fare cose come:

  1. Connetti i contenitori tra loro (ad esempio, un contenitore che esegue un'applicazione Web e un altro contenitore che esegue un database)
  2. Esportare e importare applicazioni (immagini)
  3. Trasferisci file tra il sistema operativo e il contenitore

Docker utilizza la sintassi di programmazione YAML per consentire agli sviluppatori di istruire come creare un contenitore e cosa eseguire. Questo è uno dei motivi principali per cui Docker è così portabile e facile da eseguire il debug; condividi le istruzioni e verrà creato ed eseguito allo stesso modo su qualsiasi dispositivo che supporti il motore Docker.

Sfide Risposte

Qual è il nome della funzionalità del kernel che consente ai processi di utilizzare le risorse del sistema operativo senza poter interagire con altri processi?
In un normale configurazione, altri contenitori possono interagire tra loro? (sì/no)
Cosa diventa un'applicazione quando viene pubblicata tramite Docker? Formato: An xxxxx (inserire le x)

Qual è l'abbreviazione del linguaggio di sintassi di programmazione utilizzato da Docker?

In che anno è stato originariamente creato Docker?

Dove è stato presentato per la prima volta Docker?

Quale versione di Unix aveva i primi concetti di containerizzazione?

Quale comando possiamo usare per visualizzare un elenco di processi in esecuzione?
Containerizzare le applicazioni nel sito statico. Cos'è la bandiera?
Se volessimo tiro un'immagine docker, come sarebbe il nostro comando?

Se volessimo elencare tutte le immagini su un dispositivo che esegue Docker, come sarebbe il nostro comando?

Diciamo che volevamo estrarre l'immagine “tryhackme” (senza virgolette); come sarebbe il nostro comando?

Diciamo che vogliamo estrarre l'immagine “tryhackme” con il tag “1337” (senza virgolette). Come sarebbe il nostro comando?

Come sarebbe il nostro comando se volessimo eseguire un contenitore in modo interattivo?

Nota: supponiamo di non specificare alcuna immagine qui.

Come sarebbe il nostro comando se volessimo eseguire un contenitore in "distaccato" modalità?

Nota: supponiamo di non specificare alcuna immagine qui.

Diciamo che vogliamo eseguire un contenitore che verrà eseguito E associare un server web sulla porta 80. Come sarebbe il nostro comando?

Nota: Supponiamo di non specificare alcuna immagine qui.

Come elencheremmo tutto? corsa contenitori?

Ora, come elencheremmo Tutto contenitori (anche fermi)?

Quali istruzioni utilizzeremmo per specificare quale immagine di base dovrebbe utilizzare il contenitore?
Quale istruzione useremmo per dire al contenitore di eseguire un comando?

Quale comando docker utilizzeremmo per creare un'immagine utilizzando un Dockerfile?

Diciamo che vogliamo dare un nome a questa immagine; quale argomento useremmo?

Voglio usare docker-compose  A avviare una serie di contenitori. Quale argomento mi permette di farlo?

Voglio usare docker-compose  A eliminare la serie di contenitori. Quale argomento mi permette di farlo?

Qual è il nome del file .yml che docker-compose usi?

Nota: per questa domanda, dovrai includere il file .yml estensione del file nella risposta

Cosa significa il termine “IPC”?
A quale tecnologia può essere eguagliato il Docker Server?
Connettersi alla macchina. Qual è il nome del contenitore attualmente in esecuzione?

Utilizzare Docker per avviare un server Web con l'immagine "webserver" (senza virgolette). Avrai bisogno di eseguire il contenitore con la porta 80.

Dopo aver avviato il contenitore, prova a connetterti a https://LAB_WEB_URL.p.thmlabs.com/ nel tuo browser. Cos'è la bandiera?

Videoguida

Circa l'autore

Creo note sulla sicurezza informatica, note di marketing digitale e corsi online. Fornisco anche consulenza di marketing digitale, inclusi ma non limitati a SEO, annunci Google e Meta e amministrazione CRM.

Visualizza articoli