Installare ed utilizzare Docker su Windows

di | 5 Febbraio 2019

Docker

Conoscete già Docker? Si tratta di un software popolare tra gli sviluppatori che permette di creare dei contenitori (in inglese container) dove far girare le proprie applicazioni in modo indipendente dal sistema.

Container: unità standard di software che contiene pacchetti composti da codice e tutte le dipendenze necessarie permettendo di eseguire le applicazioni velocemente ed in modo affidabile in ogni ambiente.

Un’immagine container docker è un pacchetto software eseguibile leggero, standalone che include tutto ciò che è necessario per far girare un’applicazione: codice, librerie runtime, tool e librerie di sistema, impostazioni.

Esistono diversi vantaggi nell’utilizzare Docker:

  • Standard: Docker ha creato lo standard per i container, possono essere portable ovunque
  • Leggero: I container condividono il kernel di sistema del S.O. ottimizzando così le risorse del server e riducendo i costi
  • Sicuro: le applicazioni sono sicure nei container e Docker fornisce un solido isolamente

Docker ha molti modi di utilizzo, il più popolare è quello di creare container di applicazioni esistenti.
Ad esempio se siete sviluppatori WordPress o semplicemente volete testare nuovi temi e plugins è possibile creare un container locale ed installare un’immagine Docker di WordPress (vedi esempio sotto).

In Windows occorre prima di tutto installare Docker Desktop for Windows.
Per scaricare il software occorre creare un account, quindi effettuare il login utilizzando l’ID Docker e la password scelta.
Una volta installato Docker Desktop for Windows inserire le proprie credenziali ed effettuare il login.

Occorre quindi un’immagine per avviare il container. Esistono molte immagini pubbliche disponibili per differenti scopi (WordPress, Ubuntu, Node.js, ecc…), puoi trovarle su Docker Hub.

Il primo passo per la creazione di un qualsiasi container è creare il suo file di configurazione. Il file di configurazione specifica quale immagine il container utilizzerà e con quali parametri.
Creiamo quindi una nuova cartella e all’interno un file chiamato docker-compose.yml con il seguente contenuto:

version: '3.3'

services:
   db:
     image: mysql:5.7
     volumes:
       - db_data:/var/lib/mysql
     restart: always
     environment:
       MYSQL_ROOT_PASSWORD: somewordpress
       MYSQL_DATABASE: wordpress
       MYSQL_USER: wordpress
       MYSQL_PASSWORD: wordpress

   wordpress:
     depends_on:
       - db
     image: wordpress:latest
     ports:
       - "8000:80"
     restart: always
     environment:
       WORDPRESS_DB_HOST: db:3306
       WORDPRESS_DB_USER: wordpress
       WORDPRESS_DB_PASSWORD: wordpress
volumes:
    db_data: {}

fonte: Docker Documentation

Aprire un prompt dei comandi all’interno di questa cartella e digitare:

docker-compose up -d

Verranno scaricate le immagini Docker necessarie ed avviati i container WordPress e database.
A questo punto WordPress dovrebbe girare sulla porta 8000, è sufficiente aprire il browser e digitare l’indirizzo http://localhost:8000.
Nota: il sito potrebbe non essere immediatamente disponibile, questo perché i container sono ancora in fase di inizializzazione e può occorrere diversi minuti.
A questo punto vi ritroverete la classica installazione di WordPress.

Se vogliamo rimuovere il container e la rete di default ma preservare il database WordPress il comando da digitare è:

docker-compose down

Se vogliamo rimuove i container, la rete di default e il database WordPress il comando da digitare è:

docker-compose down --volumes

Abbiamo visto come creare un file di configurazione richiesto per eseguire la propria applicazione (in questo caso WordPress) dentro un container, questo è solo un esempio, Docker offre tante possibilità a partire dalle immagini Docker pubbliche disponibili su Docker Hub, inoltre su Internet potete trovare tanti files di configurazione da poter utilizzare o crearne di vostri in base alle vostre esigenze.

In questo articolo abbiamo mostrato solo alcuni comandi Docker, per una lista completa dei comandi di base fare riferimento alla Documentazione.

Iscriviti al gruppo Telegram Italian Spaghetti Geeks

https://t.me/ItalianSpaghettiGeeks

News e discussioni sulla tecnologia (internet, computer e mobile, telefonia, sat/DTT e streaming, ecc...), giveaways esclusivi prodotti tech, sconti ed offerte e molto altro ancora!

Rispondi

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.