Ogni primo sabato del mese ci troviamo al Patronato Ss. Redentore per sperimentare e per condividere esperienze sul mondo digitale e per provare o cercare alternative libere agli strumenti di tutti i giorni. Questo sabato però è diverso… 🤓
Sabato 2 novembre 2024 impareremo a usare Docker.
Cos’è Docker? Link to heading
Immagina di avere una cucina molto piccola, dove prepari i tuoi piatti preferiti. Ogni volta che vuoi cucinare qualcosa di nuovo, devi tirare fuori tutti gli ingredienti e gli utensili, e poi pulire tutto dopo. È un po’ complicato, vero?
Ora, pensa a Docker come a una serie di scatole magiche che ti aiutano a cucinare senza disordine. Ogni scatola contiene tutto ciò che ti serve per preparare un piatto: ingredienti, ricette e utensili. Così, quando vorrai cucinare un piatto, dovrai prendere semplicemente la scatola corrispondente, aprirla e voilà! Puoi iniziare a cucinare senza dover cercare in giro per la cucina.
In termini tecnici, Docker è un programma che permette a chi sviluppa software di “impacchettare” le applicazioni e tutto ciò di cui si ha bisogno per farle funzionare in un ambiente chiamato “contenitore”. Questo significa che possono portare le loro applicazioni ovunque, proprio come tu puoi portare le tue scatole di ingredienti a casa di un’amica o amico e cucinare senza problemi.
Docker è come avere una cucina organizzata con scatole magiche che rendono tutto più facile!
A chi è rivolto Link to heading
A chi vuole creare una serie di servizi in casa, il cosiddetto self-hosting, per sè stessi o per una comunità, come un sistema di gestione foto o file, in stile Google Drive, ma con software libero e auto-gestito, oppure un sito personale ma sempre auto-gestito, o per esigenze a lavoro. E’ l’idea alla base di ServiziLiberi .
Sono necessarie alcune conoscenze base di reti (almeno cos’è un indirizzo IP e una rete), e un minimo di dimestichezza con alcuni comandi su Linux da terminale.
Programma Link to heading
Aperto a chiunque dalle 14:30 alle 18:30, liberamente e gratuitamente, al Patronato SS. Redentore di Este in viale Fiume, 65:
Orario | Argomento |
---|---|
14:30 - 15:00 | 🤗 Accoglienza |
15:00 - 16:00 | 🎓 Teoria e esempio pratico |
16:00 - 18:00 | 🔮 Laboratorio pratico e sperimentazione |
18:00 - 18:30 | 👋 Rilascio attestati (sotto-forma di pacca sulla spalla) |
Bar aperto 🍻🥪
Partecipa Link to heading
E’ gradito indicare la partecipazione qui:
https://mobilizon.it/events/1f3cebfb-7778-441f-a3d6-fc76b4722c6e
Non serve registrarsi, si può confermare anche solo inserendo il proprio nome e email per conferma, non verranno inviate pubblicità o usate in modo improprio.
Evento Link to heading
L’evento è terminato come previsto. Eravamo in 8 persone in presenza + 2 da remoto. E’ stato apprezzato e seguito con piacere. Abbiamo avuto modo di provare Docker anche su macOS e funziona.
La presentazione è scaricabile in formato HTML da:
https://codeberg.org/este-linux/presentazioni/src/branch/main/2024-11-02%20docker
Consultabile direttamente da qui, anche da telefono:
https://este.linux.it/varie/presentazioni/2024-11-02%20docker/
Appunti dell’evento Link to heading
Scaricamento e avvio di librespeed:
(sudo) docker run -p 80:80 -d --name speedtest --rm ghcr.io/librespeed/speedtest
Visualizzazione container in esecuzione:
(sudo) docker ps
(sudo) docker ps -a #Per visualizzare i container arrestati
Stop container di librespeed:
(sudo) docker stop speedtest
docker compose o docker-compose: funzionano allo stesso modo, ma in base alla versione di docker in uso potreste avere il client docker che supporta il comando compose, mentre se non funziona occorre installare il pacchetto docker-compose.
sudo apt install docker-compose
Installazione di Portainer
Istruzioni disponibili da https://docs.portainer.io/start/install-ce
Versione rapida:
(sudo) docker volume create portainer_data #Creazione volume per configurazione persistente
Avvio di Portainer (Portainer è a sua volta un container):
(sudo) docker run -d -p 8000:8000 -p 9443:9443 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:2.21.4
Aprire da browser: https://localhost:9443
- bisogna accettare il certificato di sicurezza autogenerato (e continuare con l’eccezione di sicurezza)
- creare una password per l’utente Portainer
- appena entrati selezionare Get Started e la versione locale di Docker (cliccando sul riquadro con il nome)
Spiegazione di alcuni comandi base:
- docker pull: scarica solo l’immagine
- docker run: avvia un nuovo container e, se necessario, scarica l’immagine (pull)
- docker start: avvia un container già creato
Configurazioni dentro Portainer
In Network List:
- driver bridge (predefinito) permette di mettere in bridge la rete dei container docker con altri pc della stessa rete
- driver host permette al container di non essere raggiunto al di fuori dalla macchina host
Env sono le variabili d’ambiente.
Restart policy: sono le politiche di riavvio. Di solito si imposta Unless stopped (a meno che non fermato), la quale permette di lasciare il container in esecuzione sempre finché non viene fermato, altrimenti con always va sempre anche se fermato.
Il tasto Deploy avvia il container (come docker run).
La rete bridge predefinita non accetta configurazioni di IP, meglio crearsi la propria rete (network).
In Containers è possibile premere Duplicate/edit per modificare la configurazione di un container attivo e dando lo stesso nome al container si può premre Replace (sostituisci) per modificare al volo il container (funzione originariamente non presente su Docker).
Watchtower è un container che controlla aggiornamenti degli altri container e li aggiorna automaticamente.
Nginx Proxy Manager è un Reverse proxy per esporre i container pubblicamente (è a sua volta un container). Per ServiziLiberi.it usiamo Nginx Proxy Manager Plus (NPMPlus).
Immagini docker interessanti:
https://github.com/awesome-selfhosted/awesome-selfhosted#awesome-selfhosted
Grazie a Damiano (Damtux) per le note!
Condividi questo contenuto: Seguici tramite i nostri canali in rete:
Dove seguire ILS Este ➡️
Vuoi supportare la nostra attività?
Da questa pagina trovi come poter contribuire a ILS Este:Supporta ILS Este ➡️