Esiste uno strumento che risolve con estrema semplicità quel fastidioso mantra che dice:
eppure funziona sul mio computer
e tu non lo usi? ma io vengo a prenderti a sberle direttamente a casa.
Inizialmente non avevo previsto questo post, volevo solo parlare di NGINX come un nonno racconta ai nipoti di quando era bambino e c’era la guerra, contavo di andare diretto al sodo come piace a me, senza troppi fronzoli, ho dovuto arrendermi.
Davo per scontato che quelli là fuori, i dev, conoscono o sanno utilizzare Docker, mi è stato fatto notare che non è affatto come credo.
Perché tirare in ballo Docker?
Perché le virtual machine mi hanno stancato da oltre 10 anni, è molto più semplice da utilizzare, in pochissimo tempo hai un ambiente isolato e funzionante che puoi distruggere con quattro comandi e ricreare con uno soltanto a partire dai tuoi file di configurazione.
Docker è uno strumento che ha stravolto la mia produttività.
Risolve una serie di problemi non indifferenti a discapito di qualche configurazione extra del tuo ambiente di lavoro.
Se ancora non lo stai utilizzando, a questo link trovi il necessario per scaricarlo e installarlo, considera che sarà fondamentale per seguire i contenuti di questa newsletter.
Partiamo da un semplicissimo presupposto, i Dockerfile che trovi nel repository di questo substack ti consentiranno di ricostruire in locale i Container e toccare con mano ciò di cui parlo (v. Approccio Modulare su Gitlab).
In questo modo io metto a disposizione tutto il necessario:
Dockerfile di creazione del Container
eventuali file di configurazione di NGINX modificati
eventuali file di configurazione del dominio
eventuali file utili per l’esecuzione di test
dopodiché, dalla cartella di riferimento del post esegui:
docker build -t nome-a-scelta .
e
docker run -dp 8000:80 nome-a-scelta
e il gioco è fatto, apri il browser, visiti:
http://localhost:8000
e il risultato è abbastanza autoesplicativo.
La cartella dedicata a questo contenuto la trovi qui: 000-nginx-e-docker.
Se non hai idea di come clonare il repository lo dico subito, lascia perdere, c’è molto, molto altro da imparare prima di leggere queste righe, te lo dico col cuore in mano.
Mi è già capitato di confrontarmi con personaggi che riescono a vendersi ad aziende come Senior Developer quando, la triste realtà ci dimostra poi in seguito, non avevano MAI utilizzato un sistema di versionamento dei file prima di quell’esperienza ed è più imbarazzante di quanto possa sembrare.
Sto dando per scontato che un Dev debba conoscere Git? Si.